X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2Fform%2FForm.class.php;fp=WEB-INF%2Flib%2Fform%2FForm.class.php;h=7814877f47023f0e54cec0210ecea849b67a3f28;hb=d2df33e87f20af74c9339c15d3a7fbacd9560ded;hp=1beb590c6d10e8fc480459db7761147652acfb48;hpb=785d404c84c153bda7d45d3aedfefa81985703b3;p=timetracker.git diff --git a/WEB-INF/lib/form/Form.class.php b/WEB-INF/lib/form/Form.class.php index 1beb590c..7814877f 100644 --- a/WEB-INF/lib/form/Form.class.php +++ b/WEB-INF/lib/form/Form.class.php @@ -35,11 +35,11 @@ class Form { - var $name = ''; - var $elements = array(); + var $name = ''; // Form name. + var $elements = array(); // An array of input controls in form. - function __construct($formName) { - $this->name = $formName; + function __construct($name) { + $this->name = $name; } function getElement($name) { @@ -53,111 +53,110 @@ class Form { function getName() { return $this->name; } // addInput - adds an input object to the form. - function addInput($arguments) { - switch($arguments['type']) { + function addInput($params) { + switch($params['type']) { case 'text': import('form.TextField'); - $el = new TextField($arguments['name']); - $el->setMaxLength(@$arguments['maxlength']); + $el = new TextField($params['name']); + if (isset($params['maxlength'])) $el->setMaxLength($params['maxlength']); break; case 'password': import('form.PasswordField'); - $el = new PasswordField($arguments['name']); - $el->setMaxLength(@$arguments['maxlength']); + $el = new PasswordField($params['name']); + if (isset($params['maxlength'])) $el->setMaxLength($params['maxlength']); + break; + + case 'datefield': + import('form.DateField'); + $el = new DateField($params['name']); + $el->setMaxLength('10'); + break; + + case 'floatfield': + import('form.FloatField'); + $el = new FloatField($params['name']); + if (isset($params['format'])) $el->setFormat($params['format']); break; // TODO: refactoring ongoing down from here. -// Change $arguments to something better (maybe). $args or $params? - case "datefield": - import('form.DateField'); - $el = new DateField($arguments["name"]); - $el->setMaxLength("10"); - break; - - case "floatfield": - import('form.FloatField'); - $el = new FloatField($arguments["name"]); - if (isset($arguments["format"])) $el->setFormat($arguments["format"]); - break; - - case "textarea": + case "textarea": import('form.TextArea'); - $el = new TextArea($arguments["name"]); - $el->setColumns(@$arguments["cols"]); - $el->setRows(@$arguments["rows"]); - if (isset($arguments["maxlength"])) $el->setMaxLength($arguments["maxlength"]); + $el = new TextArea($params["name"]); + $el->setColumns(@$params["cols"]); + $el->setRows(@$params["rows"]); + if (isset($params["maxlength"])) $el->setMaxLength($params["maxlength"]); break; case "checkbox": import('form.Checkbox'); - $el = new Checkbox($arguments["name"]); - if (@$arguments["checked"]) $el->setChecked(true); - $el->setData(@$arguments["data"]); + $el = new Checkbox($params["name"]); + if (@$params["checked"]) $el->setChecked(true); + $el->setData(@$params["data"]); break; case "checkboxgroup": import('form.CheckboxGroup'); - $el = new CheckboxGroup($arguments["name"]); - if (isset($arguments["layout"])) $el->setLayout($arguments["layout"]); - if (isset($arguments["groupin"])) $el->setGroupIn($arguments["groupin"]); - if (isset($arguments["datakeys"])) $el->setDataKeys($arguments["datakeys"]); - $el->setData(@$arguments["data"]); + $el = new CheckboxGroup($params["name"]); + if (isset($params["layout"])) $el->setLayout($params["layout"]); + if (isset($params["groupin"])) $el->setGroupIn($params["groupin"]); + if (isset($params["datakeys"])) $el->setDataKeys($params["datakeys"]); + $el->setData(@$params["data"]); break; case "combobox": import('form.Combobox'); - $el = new Combobox($arguments["name"]); - $el->setData(@$arguments["data"]); - $el->setDataDefault(@$arguments["empty"]); - if (isset($arguments["datakeys"])) $el->setDataKeys($arguments["datakeys"]); + $el = new Combobox($params["name"]); + $el->setData(@$params["data"]); + $el->setDataDefault(@$params["empty"]); + if (isset($params["datakeys"])) $el->setDataKeys($params["datakeys"]); break; case "hidden": import('form.Hidden'); - $el = new Hidden($arguments["name"]); + $el = new Hidden($params["name"]); break; case "submit": import('form.Submit'); - $el = new Submit($arguments["name"]); + $el = new Submit($params["name"]); break; case "calendar": import('form.Calendar'); - $el = new Calendar($arguments["name"]); - $el->setHighlight(@$arguments["highlight"]); + $el = new Calendar($params["name"]); + $el->setHighlight(@$params["highlight"]); break; case "table": import('form.Table'); - $el = new Table($arguments["name"]); - $el->setData(@$arguments["data"]); - $el->setWidth(@$arguments["width"]); + $el = new Table($params["name"]); + $el->setData(@$params["data"]); + $el->setWidth(@$params["width"]); break; case "upload": import('form.UploadFile'); - $el = new UploadFile($arguments["name"]); - if (isset($arguments["maxsize"])) $el->setMaxSize($arguments["maxsize"]); + $el = new UploadFile($params["name"]); + if (isset($params["maxsize"])) $el->setMaxSize($params["maxsize"]); break; } if ($el!=null) { $el->setFormName($this->name); - if (isset($arguments["id"])) $el->setId($arguments["id"]); + if (isset($params["id"])) $el->setId($params["id"]); if (isset($GLOBALS["I18N"])) $el->localize($GLOBALS["I18N"]); - if (isset($arguments["enable"])) $el->setEnabled($arguments["enable"]); + if (isset($params["enable"])) $el->setEnabled($params["enable"]); - if (isset($arguments["style"])) $el->setStyle($arguments["style"]); - if (isset($arguments["size"])) $el->setSize($arguments["size"]); + if (isset($params["style"])) $el->setStyle($params["style"]); + if (isset($params["size"])) $el->setSize($params["size"]); - if (isset($arguments["label"])) $el->setLabel($arguments["label"]); - if (isset($arguments["value"])) $el->setValue($arguments["value"]); + if (isset($params["label"])) $el->setLabel($params["label"]); + if (isset($params["value"])) $el->setValue($params["value"]); - if (isset($arguments["onchange"])) $el->setOnChange($arguments["onchange"]); - if (isset($arguments["onclick"])) $el->setOnClick($arguments["onclick"]); + if (isset($params["onchange"])) $el->setOnChange($params["onchange"]); + if (isset($params["onclick"])) $el->setOnClick($params["onclick"]); - $this->elements[$arguments["name"]] = &$el; + $this->elements[$params["name"]] = &$el; } }