X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-core%2Finclude%2Fclass_MultiSelectWindow.inc;h=c77f07b6497d1a9e1619e30b16b17430bd96ee3c;hb=f5a365f5ce54675a7b990f4a6cfa02485f1926cc;hp=f088cc189351693b1baaf3fd0c4c014b5bb86a93;hpb=7418bd6251aaf4f6fb5da61dc3d16b52043b81a4;p=gosa.git diff --git a/gosa-core/include/class_MultiSelectWindow.inc b/gosa-core/include/class_MultiSelectWindow.inc index f088cc189..c77f07b64 100644 --- a/gosa-core/include/class_MultiSelectWindow.inc +++ b/gosa-core/include/class_MultiSelectWindow.inc @@ -63,6 +63,11 @@ class MultiSelectWindow{ function ClearElementsList() { + $ui =get_userinfo(); + $deps = $ui->get_module_departments($this->module); + if(!in_array($this->selectedBase, $deps)){ + $this->selectedBase = array_shift($deps); + } $this->array_Elements = array(); } @@ -672,10 +677,15 @@ class MultiSelectWindow{ } uksort($this->departments, 'strnatcasecmp'); $this->departments = array_values($this->departments); + + $ui = get_userinfo(); + $module_deps = $ui->get_module_departments($this->module); /* Add deps to this dialog object list */ foreach($this->departments as $key=> $val){ + if(!in_array($val['dn'],$module_deps)) continue; + /* Check if this department contains sub-departments Display different image in this case */ @@ -740,8 +750,11 @@ class MultiSelectWindow{ $ids = $this->config->idepartments; foreach($modules as $module){ $d = $ui->get_module_departments($module); - foreach($d as $department){ - $departments[$department] = $department; + + foreach($ids as $department => $desc){ + if(in_array($department,$d)){ + $departments[$department] = $department; + } } }