index 9205244d5c80af7909f92b587851d65dbe62cb9b..6fa256f5daa85b560bd60c3a63c82ba3c141ef2f 100644 (file)
class grouptabs extends tabs
{
- function grouptabs($config, $data, $dn)
+ function grouptabs($config, $data, $dn,$acl_category)
{
- tabs::tabs($config, $data, $dn);
+ tabs::tabs($config, $data, $dn,$acl_category);
+ $baseobject= $this->by_object['group'];
+ foreach ($this->by_object as $name => $obj){
+ if(isset($obj->parent)){
+ $this->by_object[$name]->parent = $this;
+ }
+ }
+
+ /* Add references/acls/snapshots */
+ $this->addSpecialTabs();
}
function save_object($save_current= FALSE)
}
}
+ function delete()
+ {
+ /* Put baseobjects 'cn' to mailobjects 'uid' */
+ $baseobject= $this->by_object['group'];
+ if (isset($this->by_object['mailgroup'])){
+ $this->by_object['mailgroup']->uid= $baseobject->cn;
+ }
+ tabs::delete();
+ }
+
function save()
{
$baseobject= $this->by_object['group'];
$this->dn= $new_dn;
}
- return tabs::save();
+ $ret= tabs::save();
+
+ /* Fix tagging if needed */
+ $baseobject->dn= $new_dn;
+ $baseobject->handle_object_tagging();
+
+ return $ret;
}
+ function saveCopyDialog()
+ {
+ tabs::saveCopyDialog();
+
+ /* Update reference, transfer variables */
+ $baseobject= $this->by_object['group'];
+ foreach ($this->by_object as $name => $obj){
+ /* Don't touch base object */
+ if ($name != 'group'){
+ $obj->parent= &$this;
+ $obj->cn= $baseobject->cn;
+ $this->by_object[$name]= $obj;
+ }
+ }
+ }
+
}
?>