Code

Updated management.
[gosa.git] / gosa-core / include / class_plugin.inc
index 38bd1cf9436b30d4807e6da09edfad3870b10d9d..0691c206073d220480c29269e45c8d395ee68038 100644 (file)
@@ -887,6 +887,9 @@ class plugin
     /* FAIvariable=.../..., cn=.. 
         could not be saved, because the attribute FAIvariable was different to 
         the dn FAIvariable=..., cn=... */
+
+    if(!is_array($new['objectClass'])) $new['objectClass'] = array($new['objectClass']);
+
     if(in_array_ics("FAIdebconfInfo",$new['objectClass'])){
       $new['FAIvariable'] = $ldap->fix($new['FAIvariable']);
     }
@@ -1001,14 +1004,9 @@ class plugin
 
     // Walk through all POSIX groups
     foreach($groups as $group){
+
       // Migrate old to new dn
       $o_group= new group($this->config,$group['dn']);
-      if (isset($o_group->member[$src_dn])) {
-        unset($o_group->member[$src_dn]);
-      }
-      $o_group->member[$dst_dn]= $dst_dn;
-      
-      // Save object group
       $o_group->save();
     }
 
@@ -1154,11 +1152,8 @@ class plugin
       if (isset($source[$var])){
         if(isset($source[$var]['count'])){
           if($source[$var]['count'] > 1){
-            $this->$var = array();
-            $tmp = array();
-            for($i = 0 ; $i < $source[$var]['count']; $i++){
-              $tmp = $source[$var][$i];
-            }
+            $tmp= $source[$var];
+            unset($tmp['count']);
             $this->$var = $tmp;
           }else{
             $this->$var = $source[$var][0];