diff --git a/plugins/personal/environment/class_logonManagementDialog.inc b/plugins/personal/environment/class_logonManagementDialog.inc
index 819cee44aa57150d33d6868f5ffa64d581551b09..98ce41ff312a27e1e7454f321ab4c79e3ff2337b 100644 (file)
/* attribute list for save action */
var $ignore_account = TRUE;
- var $attributes = array();
+ var $attributes = array("LogonName","LogonPriority","LogonLast","LogonOverload","LogonData","LogonDescription");
var $objectclasses = array("whatever");
var $use_existing = false;
- var $baseDir = "../kioskProfiles/";
- var $filePrefix = ".kioskProfile";
+ var $LogonName =""; // Name for the LogonScript
+ var $LogonPriority =""; // Priority defines the order in which the scripts will be processed
+ var $LogonLast =""; // Is this script marked as the last, all following scripts will be skipped
+ var $LogonOverload =""; // If Overload is activated this script is overlaodable by a group script with same prio
+ var $LogonData =""; // The script itself
+ var $LogonDescription ="";
+
+ var $nameIsEditable = true;
- function logonManagementDialog ($config, $dn= NULL,$use_existing=false )
+ var $real_LogonName = "";
+
+ function logonManagementDialog ($config, $dn= NULL,$data=false)
{
- $this->use_existing = $use_existing;
plugin::plugin ($config, $dn);
+
+ if($data){
+ $this->LogonName = $data['LogonName'];
+ $this->LogonPriority = $data['LogonPriority'];
+ $this->LogonOverload = $data['LogonOverload'];
+ $this->LogonLast = $data['LogonLast'];
+ $this->LogonData = $data['LogonData'];
+ $this->LogonDescription = $data['LogonDescription'];
+ $this->nameIsEditable = false;
+ $this->real_LogonName = $data['LogonName'];
+ }
}
function execute()
{
+ /* Call parent execute */
+ plugin::execute();
+
$smarty= get_smarty();
$display= "";
+
+ if((isset($_POST['StartImport']))&&(isset($_FILES['importFile']))){
+ $this->LogonData = file_get_contents($_FILES['importFile']['tmp_name']);
+ @unlink($_FILES['importFile']['tmp_name']);
+ }
+
+ foreach($this->attributes as $attr){
+ $smarty->assign($attr,$this->$attr);
+ if($this->$attr){
+ $smarty->assign($attr."CHK"," checked ");
+ }else{
+ $smarty->assign($attr."CHK","");
+ }
+ }
+ $prios=array(1,2,3,4,5,6,7,8,9,10);
+ $smarty->assign("LogonPrioritys",$prios);
+ $smarty->assign("LogonPriorityKeys",$prios);
+
+ if(!$this->nameIsEditable){
+ $smarty->assign("LogonNameACL"," disabled ");
+ }else{
+ $smarty->assign("LogonNameACL","");
+ }
+
+
$display.= $smarty->fetch(get_template_path('logonManagement.tpl', TRUE,dirname(__FILE__)));
return($display);
}
+ function save_object()
+ {
+ if(isset($_POST['dialogissubmitted'])){
+ foreach($this->attributes as $attr){
+ if(isset($_POST[$attr])){
+ $this->$attr = stripslashes($_POST[$attr]);
+ }else{
+ $this->$attr = false;
+ }
+ }
+ }
+ }
+
+ function check()
+ {
+ /* Call common method to give check the hook */
+ $message= plugin::check();
+
+ if(preg_match("/[^a-z]/",$this->LogonName)){
+ $message[] = _("Specified name is invalid.");
+ }
+
+ if(empty($this->LogonName)){
+ $message[] = _("Please specify a valid script name.");
+ }
+
+ if(preg_match("/[^a-z0-9,\.-;:_\(\)!\? ]/i",$this->LogonDescription)){
+ $message[] = _("Specified description contains invalid characters.");
+ }
+
+ return $message;
+ }
+
+
+ function save()
+ {
+ $a_return= array();
+ foreach($this->attributes as $attr){
+ $a_return[$attr]=$this->$attr;
+ }
+
+ if(!$this->nameIsEditable){
+ $a_return['LogonName']=$this->real_LogonName;
+ }
+
+ return($a_return);
+ }
+
}
// vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler:
?>