diff --git a/trunk/gosa-plugins/goto/admin/systems/goto/class_workstationService.inc b/trunk/gosa-plugins/goto/admin/systems/goto/class_workstationService.inc
index 1ff57a860b139071e16e74a58377fbc6da81beb9..fde0993dee56fd7ce4e142a2a532266bcc7344bd 100644 (file)
$this->XDrivers[$xdriver] = $xdriver;
}
- array_unshift($this->XDrivers, "["._("manual/auto")."]");
-
+ if (isset($this->attrs['gosaGroupObjects'])) {
+ array_unshift($this->XDrivers, "["._("manual/auto")."]");
+ }
+ else {
+ array_unshift($this->XDrivers, "["._("unknown")."]");
+ }
+
$this->XColordepths= array(
"8" => "8 " ._("bit"),
"15" => "15 "._("bit"),
switch ($name){
case 'gotoXDriver':
- $this->XDrivers = array('default' => _("inherited").' ['.$attrs[$name][0].']' ) + $this->XDrivers;
+ $ogroup_driver = $attrs['gotoXDriver'][0];
+ if (in_array($ogroup_driver, $this->XDrivers) && (empty($this->attrs['gotoXDriver']))) {
+ $this->XDrivers = array('default' => _("inherited").' ['.$attrs[$name][0].']' ) + $this->XDrivers;
+ }
break;
case 'gotoXResolution':
$this->XResolutions= array('default' => _("inherited").' ['.$attrs[$name][0].']' ) + $this->XResolutions;
function remove_from_parent()
{
+ /* Cancel if there's nothing to do here */
+ if ((!$this->acl_is_removeable())){
+ return;
+ }
+
+ /* Remove and write to LDAP */
+ plugin::remove_from_parent();
+ $ldap = $this->config->get_ldap_link();
+ $ldap->cd($this->dn);
+ $this->cleanup();
+ $ldap->modify($this->attrs);
$this->handle_post_events("remove");
new log("remove","workstation/".get_class($this),$this->dn);
}