Code

Reactivated remove_from parent for dns entries
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Thu, 30 Nov 2006 10:54:19 +0000 (10:54 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Thu, 30 Nov 2006 10:54:19 +0000 (10:54 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@5268 594d385d-05f5-0310-b6e9-bd551577e9d8

plugins/admin/systems/class_termDNS.inc

index f73fe741fe1c18baf372227799c0242752687330..0e5263634a7e106fd617ed14918ed96a1dad6ec0 100644 (file)
@@ -234,20 +234,26 @@ class termDNS extends plugin
     return($display);
   }
 
+
   function remove_from_parent()
   {
-    /*
-    $ldap = $this->config->get_ldap_link();
-    $ldap->cd($this->orig_dn);
-    $ldap->search("(&(objectClass=dNSZone)(zoneName=*)(!(relativeDomainName=@)))",array("relativeDomainName","zoneName"));
-    while($attr = $ldap->fetch()){  
-    $ldap->cd($attr['dn']);
-    $ldap->rmDir($attr['dn']);
-    show_ldap_error($ldap->get_error(), sprintf(_("Removing of terminal/dns acoount with dn '%s' failed."),$this->dn));
+    if($this->initially_was_account){
+
+      $ldap = $this->config->get_ldap_link();
+
+      $tmp = array();
+      $this->dnsEntry['exists'] = false;
+      $tmp = getDNSHostEntriesDiff($this->config,$this->OrigCn,$this->dnsEntry,$this->cn);
+
+      /* Delete dns */
+      foreach($tmp['del'] as $dn => $del){
+        $ldap->cd($dn);
+        $ldap->rmdir_recursive($dn);
+      }
     }
-     */
   }
 
+
   /* Save data to object */
   function save_object()
   {