Code

Made filter rely on it's own input
[gosa.git] / gosa-core / include / class_MultiSelectWindow.inc
index 0e40eab1e5547b792fd3837dc82859d95d8cceb1..2e114fd38df8128d67310b00b0b137dbab99f978 100644 (file)
@@ -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 = "<a href='?plug=".$_GET['plug']."&amp;post_id=".$this->post_id."&amp;act=dep_open&amp;dep_id=%s'>%s</a>";
     $types = departmentManagement::get_support_departments();
     $ui = get_userinfo();
@@ -673,11 +678,10 @@ 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);