From 4eeae64be4106b1169059107a9aa0b3424fff4ba Mon Sep 17 00:00:00 2001 From: hickert Date: Thu, 12 Jun 2008 14:04:12 +0000 Subject: [PATCH] Updated classes to support additional container objects. gosa.conf git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@11307 594d385d-05f5-0310-b6e9-bd551577e9d8 --- .../class_departmentManagement.inc | 22 ++- .../plugins/admin/departments/generic.tpl | 127 ++++++++++++++++-- 2 files changed, 137 insertions(+), 12 deletions(-) diff --git a/gosa-core/plugins/admin/departments/class_departmentManagement.inc b/gosa-core/plugins/admin/departments/class_departmentManagement.inc index 03cf292c6..26ed101aa 100644 --- a/gosa-core/plugins/admin/departments/class_departmentManagement.inc +++ b/gosa-core/plugins/admin/departments/class_departmentManagement.inc @@ -114,10 +114,22 @@ class departmentManagement extends plugin */ if ($s_action=="new"){ $this->dn= "new"; - if($s_entry == "c"){ - $this->deptabs= new deptabs($this->config,$this->config->data['TABS']['COUNTRY_TABS'], $this->dn,"country"); + + $objects['c'] ['ACL'] = "country"; + $objects['c'] ['TAB'] = "COUNTRY_TABS"; + $objects['ou']['ACL'] = "department"; + $objects['ou']['TAB'] = "DEPTABS"; + $objects['l'] ['ACL'] = "locatity"; + $objects['l'] ['TAB'] = "LOCALITY_TABS"; + $objects['o'] ['ACL'] = "organization"; + $objects['o'] ['TAB'] = "ORGANIZATION_TABS"; + + if(isset($objects[$s_entry])){ + $tab = $objects[$s_entry]['TAB']; + $acl = $objects[$s_entry]['ACL']; + $this->deptabs= new deptabs($this->config,$this->config->data['TABS'][$tab], $this->dn,$acl); }else{ - $this->deptabs= new deptabs($this->config,$this->config->data['TABS']['DEPTABS'], $this->dn,"department"); + trigger_error("Invalid / Not implemented countainer type."); } $this->deptabs->set_acl_base($this->DivListDepartment->selectedBase); } @@ -440,6 +452,10 @@ class departmentManagement extends plugin /**/ $non_ou = get_list("(&(|(c=$Regex)(description=$Regex))(objectClass=country))", "department", $base, array("c", "description"), GL_SIZELIMIT ); + $non_ou = array_merge($non_ou,get_list("(&(|(l=$Regex)(description=$Regex))(objectClass=locality))", + "department", $base, array("l", "description"), GL_SIZELIMIT )); + $non_ou = array_merge($non_ou,get_list("(&(|(o=$Regex)(description=$Regex))(objectClass=organization))", + "department", $base, array("o", "description"), GL_SIZELIMIT )); $this->departments= array(); foreach($non_ou as $obj){ diff --git a/gosa-core/plugins/admin/departments/generic.tpl b/gosa-core/plugins/admin/departments/generic.tpl index fa8fc8ea3..df3c9121f 100644 --- a/gosa-core/plugins/admin/departments/generic.tpl +++ b/gosa-core/plugins/admin/departments/generic.tpl @@ -1,4 +1,121 @@ -{if $dep_type == "c"} + +{if $dep_type == "l"} + + + + + + + +
+

{t}Properties{/t}

+ + + + + + + + + + + + + +
{$must} +{render acl=$ouACL} + +{/render} +
{$must} +{render acl=$descriptionACL} + +{/render} +
{$must} +{render acl=$baseACL} + +{/render} + +{render acl=$baseACL disable_picture='images/lists/folder_grey.png'} + +{/render} +
+
+

 

+ + + + +
+

{t}Administrative settings{/t}

+{render acl=$gosaUnitTagACL} + +{/render} +
+ + +{elseif $dep_type == "o"} + + + + + + + +
+

{t}Properties{/t}

+ + + + + + + + + + + + + +
{$must} +{render acl=$ouACL} + +{/render} +
{$must} +{render acl=$descriptionACL} + +{/render} +
{$must} +{render acl=$baseACL} + +{/render} + +{render acl=$baseACL disable_picture='images/lists/folder_grey.png'} + +{/render} +
+
+

 

+ + + + +
+

{t}Administrative settings{/t}

+{render acl=$gosaUnitTagACL} + +{/render} +
+ + +{elseif $dep_type == "c"}