Code

Reverted global session changes. Too time consuming.
[gosa.git] / gosa-core / plugins / admin / ogroups / class_divListOGroup.inc
index 4894f9b13491a82501a174a3ef69730251709d55..e9490509cbdeea470064ecb809fe560b5eeff0ee 100644 (file)
@@ -68,7 +68,7 @@ class divListOGroup extends MultiSelectWindow
     $this->EnableSaveButton (false);
 
     /* Dynamic action col, depending on snapshot icons */
-    $action_col_size = 80;
+    $action_col_size = 90;
     if($this->parent->snapshotEnabled()){
       $action_col_size += 38; 
     }
@@ -118,16 +118,12 @@ class divListOGroup extends MultiSelectWindow
 
   function GenHeader()
   {
-    /* Prepare departments,
-       which are shown in the listbox on top of the listbox
-     */
-    $options= "";
-
     /* Get all departments within this subtree */
     $ui= get_userinfo();
     $first = "";
     $found = FALSE;
     $base = $this->config->current['BASE'];
+    $options  = $this->create_department_list($this->module);
 
     /* Add base */
     $tmp = array();
@@ -135,44 +131,6 @@ class divListOGroup extends MultiSelectWindow
     $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("ogroups");
-    $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
-         */
-        if(empty($first)) {
-          $first = $dep['dn'];
-        }
-
-        $value = $ids[$dep];
-        if ($this->selectedBase == $dep){
-          $found = TRUE;
-          $options.= "<option selected='selected' value='".$dep."'>$value</option>";
-        } else {
-          $options.= "<option value='".$dep."'>$value</option>";
-        }
-      }
-    }
-
-    /* The currently used base is not visible with your acl setup.
-     * Set base to first useable base.
-     */
-    if(!$found){
-      $this->selectedBase = $first;
-    }
-
     /* Add a seperator after displaying c&p and snapshot icons ? */
     $add_sep = false;
   
@@ -219,22 +177,8 @@ class divListOGroup extends MultiSelectWindow
       }
     }
 
-    if(is_object($this->parent->CopyPasteHandler) && preg_match("/r/",$acl_all)){
-      $s.= "..|---|\n";
-      $s.= "..|<img src='images/lists/copy.png' alt='' border='0' class='center'>".
-        "&nbsp;"._("Copy")."|"."multiple_copy_systems|\n";
-      $s.= "..|<img src='images/lists/cut.png' alt='' border='0' class='center'>".
-        "&nbsp;"._("Cut")."|"."multiple_cut_systems|\n";
-    }
-
-    /* Copy & paste icons */
-    if(is_object($this->parent->CopyPasteHandler) && $this->parent->CopyPasteHandler->entries_queued()){
-      $img = "<img border='0' class='center' src='images/lists/paste.png' alt=''>";
-      $s.="..|".$img."&nbsp;"._("Paste")."|editPaste|\n";
-    }else{
-      $img = "<img border='0' class='center' src='images/lists/paste-grey.png' alt=''>";
-      $s.="..|".$img."&nbsp;"._("Paste")."\n";
-    }
+    /* Add Copy & Paste header */
+    $s .= $this->parent->get_copypaste_header($this->selectedBase,$this->module);
 
     /* Add snapshot icons */
     $s .= $this->parent->get_snapshot_header($this->selectedBase,$this->module);    
@@ -255,14 +199,13 @@ class divListOGroup extends MultiSelectWindow
     /* Add Copy & Paste buttons if copy&paste is enabled
      */
     // Defining Links
-    $linkopen = "<a href='?plug=".$_GET['plug']."&amp;act=dep_open&amp;dep_id=%s'>%s</a>";
     $editlink = "<a href='?plug=".$_GET['plug']."&amp;id=%s&amp;act=edit_entry'>%s</a>";
     $userimg  = "<img class='center' src='plugins/groups/images/groups.png' alt='User'    title='%s'>";
     $mailimg  = "<img class='center' src='plugins/ogroups/images/mail.png'             alt='M'  title='"._("Mail")   ."'>";
     $empty    = "<img class='center' src='images/empty.png' style='width:16px;height:16px;' alt=''>";
 
     /* Dynamic action col, depending on snapshot icons */
-    $action_col_size = 80;
+    $action_col_size = 90;
     if($this->parent->snapshotEnabled()){
       $action_col_size += 38; 
     }
@@ -278,19 +221,8 @@ class divListOGroup extends MultiSelectWindow
       $acl    = $ui->get_permissions($val['dn'],"ogroups/ogroup");
       $acl_all= $ui->has_complete_category_acls($val['dn'],"ogroups");
 
-      if($ui->is_cutable($val['dn'],"ogroups","ogroup") && $this->parent->CopyPasteHandler){
-        $actions .= "<input class='center' type='image'
-          src='images/lists/cut.png' alt='"._("cut")."' name='cut_%KEY%' title='"._("Cut this entry")."'>&nbsp;";
-      }else{
-        $actions.="<img src='images/empty.png' alt=' ' class='center'>&nbsp;";
-      }
-
-      if($ui->is_copyable($val['dn'],"ogroups","ogroup") && $this->parent->CopyPasteHandler){
-        $actions.= "<input class='center' type='image'
-          src='images/lists/copy.png' alt='"._("copy")."' name='copy_%KEY%' title='"._("Copy this entry")."'>&nbsp;";
-      }else{
-        $actions.="<img src='images/empty.png' alt=' ' class='center'>&nbsp;";
-      }
+      /* Add copy & cut functionality */
+      $actions.= $this->parent->get_copypaste_action($val['dn'],"ogroups","ogroup");
 
       $actions.= "<input class='center' type='image'
         src='images/lists/edit.png' alt='"._("edit")."' name='group_edit_%KEY%' title='"._("Edit this entry")."'>";
@@ -310,7 +242,7 @@ class divListOGroup extends MultiSelectWindow
       }else{
         $mail = $empty;
       }
-      $title = "title='".preg_replace('/ /', '&nbsp;', @LDAP::fix($val['dn']))."'";
+      $title = "title='".preg_replace('/ /', '&nbsp;', LDAP::fix($val['dn']))."'";
       if(!isset($val['description'][0])){
         $desc = "";
       }else{