diff --git a/plugins/admin/systems/class_servService.inc b/plugins/admin/systems/class_servService.inc
index 2024df2847e569bb3b0947b61c9539c3ed8cc2cf..627cb5a95d82761ebcf50177a666ad19dcb18892 100644 (file)
var $cli_description= "Some longer text\nfor help";
var $cli_parameters= array("eins" => "Eins ist toll", "zwei" => "Zwei ist noch besser");
- var $goExportEntry = array();
- var $goTimeSource = array();
- var $goLdapBase= "";
- var $goXdmcpIsEnabled ="";
- var $goFontPath= "";
- var $goNTPServer="";
- var $goLdapServer="";
- var $goTerminalServer="";
- var $goSyslogServer="";
- var $goCupsServer="";
- var $o_subWindow = NULL;
+ var $goExportEntry = array();
+ var $goTimeSource = array();
+ var $goLdapBase = "";
+ var $goXdmcpIsEnabled = "";
+ var $goFontPath = "";
+ var $goNTPServer = "";
+ var $goShareServer = false;
+ var $goLdapServer = "";
+ var $goTerminalServer = "";
+ var $goSyslogServer = "";
+ var $goCupsServer = "";
+ var $goMailServer = "";
+ var $o_subWindow = NULL;
/* attribute list for save action */
var $ignore_account= TRUE;
var $attributes = array("goLdapBase","goXdmcpIsEnabled","goFontPath");
var $possible_objectclasses= array( "goShareServer", "goNtpServer", "goServer", "goLdapServer",
- "goTerminalServer", "goSyslogServer", "goCupsServer");
- var $objectclasses = array("top","goServer");
+ "goTerminalServer", "goSyslogServer", "goCupsServer","goMailServer");
+ var $objectclasses = array( "top","goServer");
var $additionaloc = array( "goShareServer" => array("goExportEntry"),
"goNtpServer" => array("goTimeSource"),
"goLdapServer" => array("goLdapBase"),
"goTerminalServer"=> array("goXdmcpIsEnabled", "goFontPath"),
"goSyslogServer" => array(),
+ "goMailServer" => array(),
"goCupsServer" => array());
function servservice ($config, $dn= NULL)
$tmp =array();
$tmp2=array();
- unset($this->attrs['goExportEntry']['count']);
- if((isset($this->attrs['goExportEntry']))&&(isset($this->attrs['goExportEntry']))){
- foreach($this->attrs['goExportEntry'] as $entry){
- $tmp2= split("\|",$entry);
- $tmp[$tmp2[0]]= $entry;
+ if(isset($this->attrs['goExportEntry'])){
+ unset($this->attrs['goExportEntry']['count']);
+ if((isset($this->attrs['goExportEntry']))&&(isset($this->attrs['goExportEntry']))){
+ foreach($this->attrs['goExportEntry'] as $entry){
+ $tmp2= split("\|",$entry);
+ $tmp[$tmp2[0]]= $entry;
+ }
}
}
$this->goExportEntry = $tmp;
/* Always is account... */
$this->is_account= TRUE;
+
+ /* Check if goShareServer is defined */
+ if((isset($this->attrs['objectClass']))&&(is_array($this->attrs['objectClass']))){
+ if(in_array("goShareServer",$this->attrs['objectClass'])){
+ $this->goShareServer = true;
+ }
+ }
}
function addToList($entry){
function execute()
{
+ /* Call parent execute */
+ plugin::execute();
+
/* Fill templating stuff */
$smarty= get_smarty();
}
}
- if(!count($this->goExportEntry)){
+ if(!$this->goShareServer){
$smarty->assign("goShareServerState", " disabled ");
+ $smarty->assign("goExportEntryACL", " disabled ");
+ }else{
+ $smarty->assign("goShareServerState", " ");
+ $smarty->assign("goExportEntryACL", " ");
}
/* Different handling for checkbox */
$this->goXdmcpIsEnabled= "false";
}
+ /* Save xdmcp is enabled flag */
+ if (isset($_POST['goShareServer'])){
+ $this->goShareServer = true;
+ } else {
+ $this->goShareServer = false;
+ }
}
}
/* Save to LDAP */
function save()
{
-
plugin::save();
$tmp= array();
$tmp[]= $oc;
}
}
-
+
/* Merge our current objectclasses */
foreach($this->objectclasses as $oc){
if (!in_array_ics($oc, $tmp)){
}
}
}
- $oc = array();
- foreach($this->attrs['objectClass'] as $name){
- if($name!="goNfsServer"){
- $oc[]=$name;
- }
- }
- $this->attrs['objectClass']=$oc;
/* Write to LDAP */
$ldap= $this->config->get_ldap_link();