Code

Fixed missing images problem in group headpage
[gosa.git] / plugins / admin / users / class_userManagement.inc
index 0f812e6a4386b17b46d662bed563beae66d3b7da..a8454b530bbba572d0059960147d7a701c29e570 100644 (file)
@@ -457,15 +457,26 @@ class userManagement extends plugin
 
     /* Generate template list */
     if (($s_action=="new")||($s_action=="create_user_from_tpl")){
+
       $this->templates= array();
+
       $ldap= $this->config->get_ldap_link();
+
+      /* Create list of tempaltes */
       foreach ($this->config->departments as $key => $value){
+    
+        /* Get acls from different ou's */
         $acl= get_permissions (get_people_ou().$value, $this->ui->subtreeACL);
         $acl= get_module_permission($acl, "user", get_people_ou().$value);
+  
+        /* If creation of a new user is allowed, append this template */
         if (chkacl($acl, "create") == ""){
+          
+          /* Search all templates from the current dn */
           $ldap->cd (get_people_ou().$value);
           $ldap->search ("(objectClass=gosaUserTemplate)", array("uid"));
 
+          /* Append */
           if ($ldap->count() != 0){
             while ($attrs= $ldap->fetch()){
               $this->templates[$ldap->getDN()]=
@@ -475,6 +486,8 @@ class userManagement extends plugin
           }
         }
       }
+
+      /* Sort templates */
       natcasesort ($this->templates);
       reset ($this->templates);
     }
@@ -494,6 +507,7 @@ class userManagement extends plugin
       $this->usertab= new usertabs($this->config,
           $this->config->data['TABS']['USERTABS'], $this->dn);
       $this->usertab->set_acl(array(':all'));
+      $this->usertab->by_object['user']->base= $userfilter['depselect'];
 
       /* Take care about templates */
       if ($s_action=="new_tpl"){
@@ -511,7 +525,7 @@ class userManagement extends plugin
         if ($s_action=="create_user_from_tpl"){
           $smarty->assign("template", $this->dn= $this->list[trim($s_entry)]['dn']);
         } else {
-          $smarty->assign("template", "");
+          $smarty->assign("template", "none");
         }
         $smarty->assign("edit_uid", "");
         return($smarty->fetch(get_template_path('template.tpl', TRUE)));
@@ -593,13 +607,17 @@ class userManagement extends plugin
       $this->usertab->givenName = $this->givenName;
       $template_dn              = $_POST['template'];
       $this->usertab->adapt_from_template($template_dn);
-      $template_base            = $userfilter['depselect'];//preg_replace("/^[^,]+,".get_people_ou()."/", '', $template_dn);
+      $template_base            = preg_replace("/^[^,]+,".get_people_ou()."/", '', $template_dn);
       $this->usertab->by_object['user']->base= $template_base;
 
       /* Set up the users ACL's for this 'dn' */
       $acl= get_permissions ($template_base, $this->ui->subtreeACL);
       $this->usertab->set_acl($acl);
     }
+    
+    if (isset($_POST['template_continue']) && ($_POST['template'] == 'none')){
+      $this->usertab->by_object['user']->base= $userfilter['depselect'];
+    }
 
     /* Show tab dialog if object is present */
     if ($this->usertab){
@@ -705,7 +723,7 @@ class userManagement extends plugin
                     name='user_edit_%KEY%-user' title='"._("Edit generic properties")."'>";
     $posiximg = "<input type='image' src='images/select_user.png' alt='"._("Posix")."'  
                     name='user_edit_%KEY%-posixAccount' title='"._("Edit UNIX properties")."'>";
-    $eviroimg = "<input type='image' src='images/network.png' alt='"._("Environment")."'  
+    $eviroimg = "<input type='image' src='images/smallenv.png' alt='"._("Environment")."'  
                     name='user_edit_%KEY%-environment' title='"._("Edit environment properties")."'>";
     $mailimg  = "<input type='image' src='images/mailto.png' alt='"._("Mail")."'     
                     name='user_edit_%KEY%-mailAccount' title='"._("Edit mail properties")."'>";
@@ -747,7 +765,7 @@ class userManagement extends plugin
       /* 
         If you want to disable the status pictures, just comment out the next line
       */
-      $r_con= @mysql_connect($a_SETUP['SERVER'],$a_SETUP['LOGIN'],$a_SETUP['PASSWORD']);
+      $r_con= @mysql_pconnect($a_SETUP['SERVER'],$a_SETUP['LOGIN'],$a_SETUP['PASSWORD']);
       // Check if we are  connected correctly
       if($r_con){
         $r_db  =  @mysql_select_db($a_SETUP['DB'],$r_con);
@@ -789,6 +807,8 @@ class userManagement extends plugin
         $fonac=$empty;
       }
 
+    
+
       // Specify Pics for Extensions  
       if(in_array("posixAccount"    ,$val['objectClass'])){ 
         $posix = preg_replace("/%KEY%/", "$key", $posiximg);
@@ -828,7 +848,7 @@ class userManagement extends plugin
         $tpl=$userimg;
       }
 
-      $usrimg = preg_replace("/%KEY%/", "$key", $usrimg);
+      $usrimg2 = preg_replace("/%KEY%/", "$key", $usrimg);
 
       // Generate caption for rows
       if (isset($val["sn"]) && isset($val["givenName"])){
@@ -840,7 +860,7 @@ class userManagement extends plugin
       /* Create each field */
       $field1 = array("string" => sprintf($tpl,$val['dn']),"attach"=>"style='width:20px;align:middle;'");
       $field2 = array("string" => sprintf($editlink,$key,$display).$ip_port,"attach"=>"title='".$val['dn']."'");
-      $field3 = array("string" => $usrimg."&nbsp;".$posix."&nbsp;".$enviro."&nbsp;".$maila."&nbsp;".$fonac."&nbsp;".$faxac."&nbsp;".$samba."&nbsp;".$s_img_create_from_template, "attach" => "style='width:138px;'");
+      $field3 = array("string" => $usrimg2."&nbsp;".$posix."&nbsp;".$enviro."&nbsp;".$maila."&nbsp;".$fonac."&nbsp;".$faxac."&nbsp;".$samba."&nbsp;".$s_img_create_from_template, "attach" => "style='width:155px;'");
       $field4 = array("string" => preg_replace("/%KEY%/", "$key", $action),"attach" => "style='border:none; text-align:right;width:48px'");
 
       $add = array($field1,$field2,$field3,$field4);
@@ -890,6 +910,7 @@ class userManagement extends plugin
     $smarty->assign("alphabet", generate_alphabet());
     $smarty->assign("hint", print_sizelimit_warning());
 
+    @mysql_close($r_con);
     return ($smarty->fetch(get_template_path('headpage.tpl', TRUE)));
   }