X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=plugins%2Fadmin%2Fsystems%2Fclass_workstationStartup.inc;h=02e5b7ea0c81668b990c35aacdbff524795c686c;hb=c30fdf675865a86365275ed6fb9f8a0cc06e41af;hp=1b5e032afec695573a632023e210f4c311099a06;hpb=a4fbe7970da63cfdb9e80e507704a937448f87cc;p=gosa.git diff --git a/plugins/admin/systems/class_workstationStartup.inc b/plugins/admin/systems/class_workstationStartup.inc index 1b5e032af..02e5b7ea0 100644 --- a/plugins/admin/systems/class_workstationStartup.inc +++ b/plugins/admin/systems/class_workstationStartup.inc @@ -51,6 +51,7 @@ class workstartup extends plugin var $FAIServRepConfig = array(); var $fai_activated = FALSE; + var $member_of_ogroup = FALSE; function workstartup ($config, $dn= NULL, $parent= NULL) { @@ -65,6 +66,13 @@ class workstartup extends plugin plugin::plugin ($config, $dn, $parent); + if(!isset($this->parent->by_object['ogroup'])){ + $ldap = $this->config->get_ldap_link(); + $ldap->cd ($this->config->current['BASE']); + $ldap->search("(&(objectClass=gotoWorkstationTemplate)(member=".$this->dn."))",array("cn")); + $this->member_of_ogroup = $ldap->count() >= 1; + } + /* Creating a list of valid Mirrors * none will not be saved to ldap. */ @@ -154,8 +162,10 @@ class workstartup extends plugin ['PACKAGES'][0] "pkg1"; ['PACKAGES'][1] "postfix"; */ - - $ldap->search("(&(FAIrepository=*)(objectClass=FAIrepositoryServer))",array("FAIrepository")); + $filter= ""; + $ui= get_userinfo(); + if (isset($config->current['STRICT_UNITS']) && preg_match('/TRUE/i', $config->current['STRICT_UNITS']) && $ui->gosaUnitTag != ""){ $filter= "(gosaUnitTag=".$ui->gosaUnitTag.")"; + } $ldap->search("(&(FAIrepository=*)(objectClass=FAIrepositoryServer)$filter)",array("FAIrepository")); $test = array(); while($attr = $ldap->fetch()){ if(isset($attr['FAIrepository'])){ @@ -294,11 +304,11 @@ class workstartup extends plugin /* Load hardware list */ - $ldap= $this->config->get_ldap_link(); - $ldap->cd($this->config->current['BASE']); - $ldap->search("(&(objectClass=gotoWorkstationTemplate)(member=".$this->dn."))"); - if ($ldap->count() == 1){ + if ($this->member_of_ogroup){ + if(count($this->FAIclass)==0 && $this->FAIrelease == ""){ + $this->FAIdebianMirror = "inherited"; + } if($this->fai_activated){ $map= array("gotoLdapServer","FAIclass","FAIdebianMirror","gotoBootKernel"); @@ -374,9 +384,6 @@ class workstartup extends plugin $this->gotoBootKernel= "default"; } - if(count($this->FAIclass)==0 && $this->FAIrelease == ""){ - $this->FAIdebianMirror = "inherited"; - } } @@ -823,7 +830,13 @@ class workstartup extends plugin function getFAIdebianMirrors() { $ret = array(); - $ret['inherited']="["._("inherited")."]"; + + /* Only add inherit option, if we are part in an object group + */ + if($this->member_of_ogroup) { + $ret['inherited']="["._("inherited")."]"; + } + $ret['auto']=_("automatic"); $secs = array();