X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fadmin%2Facl%2Fclass_divListACL.inc;h=b20002053bf91002ae2391e378b00307497ccc5c;hb=a55556288dcb9fd7ef67704102850a0419205f9c;hp=59020e39288d745818919cf8c8487b750291f0b8;hpb=e185cfe3858fbd8a85ea29a084535af25928dcfa;p=gosa.git diff --git a/plugins/admin/acl/class_divListACL.inc b/plugins/admin/acl/class_divListACL.inc index 59020e392..b20002053 100644 --- a/plugins/admin/acl/class_divListACL.inc +++ b/plugins/admin/acl/class_divListACL.inc @@ -76,16 +76,24 @@ class divListACL extends MultiSelectWindow $base = $this->config->current['BASE']; /* Add base */ - $deps[] = array("dn"=>$this->config->current['BASE']); - $deps= array_merge($deps,get_list("(&(|(ou=*)(description=*))(objectClass=gosaDepartment))", $this->module, $base, + $tmp = array(); + $tmp[] = array("dn"=>$this->config->current['BASE']); + $tmp= array_merge($tmp,get_list("(&(|(ou=*)(description=*))(objectClass=gosaDepartment))", $this->module, $base, array("ou", "description"), GL_SIZELIMIT | GL_SUBSEARCH)); + $deps = array(); + foreach($tmp as $tm){ + $deps[$tm['dn']] = $tm['dn']; + } + /* Load possible departments */ - $ui = get_userinfo(); - $tdeps = $ui->get_module_departments("acl"); - $ids = $this->config->idepartments; - foreach($deps as $dep){ - if(isset($ids[$dep['dn']]) && in_array_ics($dep['dn'], $tdeps)){ + $ui= get_userinfo(); + $tdeps= $ui->get_module_departments("acl"); + $ids = $this->config->idepartments; + $first = ""; + $found = FALSE; + foreach($ids as $dep => $name){ + if(isset($deps[$dep]) && in_array_ics($dep, $tdeps)){ /* Keep first base dn in mind, we could need this * info if no valid base was found @@ -93,13 +101,13 @@ class divListACL extends MultiSelectWindow if(empty($first)) { $first = $dep['dn']; } - - $value = $ids[$dep['dn']]; - if ($this->selectedBase == $dep['dn']){ + + $value = $ids[$dep]; + if ($this->selectedBase == $dep){ $found = TRUE; - $options.= ""; + $options.= ""; } else { - $options.= ""; + $options.= ""; } } }