X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-core%2Finclude%2Fclass_MultiSelectWindow.inc;h=8c75dd229719c039815539586f36a6104562a278;hb=3a308e40188042fb56365af23190514a85621963;hp=0e40eab1e5547b792fd3837dc82859d95d8cceb1;hpb=5be8f019b360e8c91f3614573c7a24767813654d;p=gosa.git diff --git a/gosa-core/include/class_MultiSelectWindow.inc b/gosa-core/include/class_MultiSelectWindow.inc index 0e40eab1e..8c75dd229 100644 --- a/gosa-core/include/class_MultiSelectWindow.inc +++ b/gosa-core/include/class_MultiSelectWindow.inc @@ -645,7 +645,7 @@ class MultiSelectWindow{ } /* Save currenlty selected base in session */ - session::set("CurrentMainBase",$this->selectedBase); + session::global_set("CurrentMainBase",$this->selectedBase); } @@ -655,6 +655,11 @@ class MultiSelectWindow{ $this->DepartmentsAdded = true; $this->Added_Departments = array(); $this->departments = array(); + + if(isset($this->Regex)){ + $this->base_selection_regex = $this->Regex; + } + $linkopen = "%s"; $types = departmentManagement::get_support_departments(); $ui = get_userinfo(); @@ -673,14 +678,13 @@ class MultiSelectWindow{ /* Get all departments within this subtree */ $s_filter = ""; $s_attrs = array("description","objectClass"); - $s_acls = array(); + $s_acls = $this->module; foreach($types as $name => $data){ $s_filter.= "(&(objectClass=gosaDepartment)(objectClass=".$data['OC'].")(".$data['ATTR']."=".$this->base_selection_regex."))"; $s_attrs[]= $data['ATTR']; - $s_acls[] = "department/".$data['ACL']; } - $tmp = get_list("(|".$s_filter.")",$s_acls,$this->selectedBase,$s_attrs,GL_NONE); + $tmp = get_list("(|".$s_filter.")",$s_acls,$this->selectedBase,$s_attrs,GL_NONE | GL_SIZELIMIT); foreach($tmp as $attrs){ foreach($types as $name => $data){ if(in_array($data['OC'],$attrs['objectClass']) && isset($attrs[$data['ATTR']][0])){