diff --git a/gosa-core/plugins/admin/departments/class_departmentGeneric.inc b/gosa-core/plugins/admin/departments/class_departmentGeneric.inc
index b3c8819e37d164da25dcdc2e26b0e6ed5a9ef8ee..c8da2b281e438896435e5b869a3bd41f165ff4bc 100644 (file)
var $businessCategory= "";
var $telephoneNumber= "";
var $facsimileTelephoneNumber= "";
- var $orig_dn= "";
var $is_administrational_unit= false;
var $gosaUnitTag= "";
var $view_logged = FALSE;
+ var $type ="ou";
+ var $namingAttr = "ou";
+
/* Headpage attributes */
var $last_dep_sorting= "invalid";
var $departments= array();
$this->ui= get_userinfo();
$this->dn= $dn;
$this->orig_dn= $dn;
- $this->orig_ou= $this->ou;
+
+ /* Save current naming attribuet
+ */
+ $nA = $this->namingAttr;
+ $orig_nA = "orig_".$nA;
+ $this->$orig_nA = $this->$nA;
+
$this->config= $config;
/* Set base */
$smarty->assign("unitTag", "");
}
- return($smarty->fetch (get_template_path('generic.tpl', TRUE)));
+ $smarty->assign("dep_type",$this->type);
+
+ switch($this->type){
+ case 'c' : $tpl ="country.tpl";break;
+ case 'o' : $tpl ="organization.tpl";break;
+ case 'l' : $tpl ="locality.tpl";break;
+ case 'ou' : $tpl ="generic.tpl";break;
+ case 'alias' : $tpl ="alias.tpl";break;
+ case 'referal' : $tpl ="referal.tpl";break;
+ default : $tpl ="generic.tpl";
+ }
+
+ return($smarty->fetch (get_template_path($tpl, TRUE)));
}
function clear_fields()
$message[]= msgPool::invalid(_("Fax"), $this->facsimileTelephoneNumber, "/[\/0-9 ()+*-]/");
}
- return $message;
+ /* Check if we are allowed to create or move this object
+ */
+ if($this->orig_dn == "new" && !$this->acl_is_createable($this->base)){
+ $message[] = msgPool::permCreate();
+ }elseif($this->orig_dn != "new" && $this->base != $this->orig_base && !$this->acl_is_moveable($this->base)){
+ $message[] = msgPool::permMove();
+ }
+
+ return $message;
}