Code

Renamed add/remove buttons
[gosa.git] / plugins / admin / systems / class_phoneGeneric.inc
index 782fb9fa4eb12d0fc19157f4616416df5cb450fe..13fa101e9c681bb199396f27ecff570115becbf0 100644 (file)
@@ -21,7 +21,7 @@ class phoneGeneric extends plugin
   var $goFonType        = "";
   var $goFonDmtfMode    = "";
   var $goFonHost        = "";
-  var $goFonDefaultIP   = "";
+  var $goFonDefaultIP   = "dynamic";
   var $goFonQualify     = "";
   var $goFonAuth        = "";
   var $goFonSecret      = "";
@@ -96,6 +96,9 @@ class phoneGeneric extends plugin
 
   function execute()
   {
+       /* Call parent execute */
+       plugin::execute();
+
     /* Do we represent a valid phone? */
     if (!$this->is_account && $this->parent == NULL){
       $display= "<img alt=\"\" src=\"images/stop.png\" align=middle>&nbsp;<b>".
@@ -281,6 +284,11 @@ class phoneGeneric extends plugin
     if (!preg_match("/^$num\\.$num\\.$num\\.$num$/", $this->ipHostNumber)){
        $message[]= _("Wrong IP format in field IP-address.");
     }
+    
+    $tr = count(split(":",$this->macAddress));
+    if($tr!=6){
+      $message[]=(_("The given macaddress is invalid. There must be 6 2byte segments seperated by ':'."));
+    }
 
     $ui= get_userinfo();
     $acl= get_permissions ($this->dn, $ui->subtreeACL);
@@ -364,6 +372,15 @@ class phoneGeneric extends plugin
 
       $ldap->cd($this->dn);
       $ldap->modify($this->attrs);
+      // $user_phone_reload   
+      $ldap->cd ($this->config->current['BASE']); 
+      $user_phone_assignment = $ldap->fetch($ldap->search("(&(objectClass=goFonAccount)(goFonHardware=".$this->cn."))",array("uid")));
+      if($user_phone_assignment){
+        $usertab= new usertabs($this->config,$this->config->data['TABS']['USERTABS'], $user_phone_assignment['dn']);
+        $usertab->by_object['phoneAccount']->is_modified = true;
+        $usertab->save();
+        unset($usertab);
+      }
       $this->handle_post_events("modify");
     }
     show_ldap_error($ldap->get_error());