Code

Fixed samba && network class
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Fri, 11 Jul 2008 08:57:55 +0000 (08:57 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Fri, 11 Jul 2008 08:57:55 +0000 (08:57 +0000)
- MACisMust wasn't used in checks
- Samba uid can't be changed.

git-svn-id: https://oss.gonicus.de/repositories/gosa/branches/2.5@11603 594d385d-05f5-0310-b6e9-bd551577e9d8

plugins/admin/systems/class_termDNS.inc
plugins/admin/systems/class_winGeneric.inc
plugins/admin/systems/tabs_winstation.inc

index 10677515edbfa37ec1d7c9958e4502bbec2f9353..a9568b3c0cfb260516c8203aa06d76de3ca64730 100644 (file)
@@ -448,16 +448,18 @@ class termDNS extends plugin
       $message[]= _("Wrong IP format in field IP-address.");
     }
 
-    /* Check if mac is empty 
-     */
-    if ($this->macAddress == "" && chkacl ($this->acl, "macAddress") == ""){
-      $message[]= _("The required field 'MAC-address' is not set.");
-    }
+    if($this->MACisMust || $this->dhcp_is_Account){
+      /* Check if mac is empty 
+       */
+      if ($this->macAddress == "" && chkacl ($this->acl, "macAddress") == ""){
+        $message[]= _("The required field 'MAC-address' is not set.");
+      }
 
-    /* Check if given mac is valid mac 
-     */
-    if(!is_mac($this->macAddress)){
-      $message[]=(_("The given macaddress is invalid. There must be 6 2byte segments seperated by ':'."));
+      /* Check if given mac is valid mac 
+       */
+      if(!is_mac($this->macAddress)){
+        $message[]=(_("The given macaddress is invalid. There must be 6 2byte segments seperated by ':'."));
+      }
     }
 
     /* only perfrom this checks if this is a valid DNS account */
index a8bba757db0842fab9b8a694c1051292f0b517e4..9867125230c21e5d9e244731cab17449bf1352fa 100644 (file)
@@ -30,6 +30,7 @@ class wingeneric extends plugin
   var $sambaPwdLastSet="";
   var $sambaAcctFlags="";
   var $netConfigDNS;
+
   /* attribute list for save action */
   var $ignore_account= TRUE;
   var $attributes   = array("cn", "description","shadowLastChange",
@@ -45,6 +46,7 @@ class wingeneric extends plugin
     plugin::plugin ($config, $dn, $parent);
     $this->netConfigDNS = new termDNS($this->config,$this->dn,$this->objectclasses);
     $this->netConfigDNS->acl = $this->acl;
+    $this->netConfigDNS->MACisMust = FALSE;
 
     /* Set base */
     if ($this->dn == "new"){
@@ -166,7 +168,7 @@ class wingeneric extends plugin
     /* Call common method to give check the hook */
     $message= plugin::check();
     $message= array_merge($message, $this->netConfigDNS->check());
-    $this->dn= "cn=".$this->cn.",ou=netdevices,ou=systems,".$this->base;
+    $this->dn= "cn=".$this->uid.",".get_winstations_ou().$this->base;
 
     $ui= get_userinfo();
     $acl= get_permissions ($this->dn, $ui->subtreeACL);
index b04f89f98cb1b1c018f18729cfc2a15eb9927ee9..2922b88c0d2d39b060a78155727102cc728528ef 100644 (file)
@@ -25,7 +25,7 @@ class wintabs extends tabs
       $baseobject->cn .= "$";
     }
 
-    $this->dn= "uid=$baseobject->cn,".get_winstations_ou().$baseobject->base;
+    $this->dn= "uid=$baseobject->uid,".get_winstations_ou().$baseobject->base;
     $baseobject->dn= $this->dn;
 
     foreach ($this->by_object as $key => $obj){