X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2Fform%2FForm.class.php;h=868a3b3c92d4737c204d33b58ae1cc7b6f360884;hb=60d2288b7fca6caf0f5d9d3eee972f040eb24fb0;hp=b37903cdd41c60a0ac7e589a6745b719c782b8ad;hpb=199277a2fd7258bb60c37a291d0d62e04e9c31ca;p=timetracker.git diff --git a/WEB-INF/lib/form/Form.class.php b/WEB-INF/lib/form/Form.class.php index b37903cd..868a3b3c 100644 --- a/WEB-INF/lib/form/Form.class.php +++ b/WEB-INF/lib/form/Form.class.php @@ -42,50 +42,35 @@ class Form { $this->name = $formName; } - // TODO: refactoring ongoing down from here. + function getElement($name) { + return $this->elements[$name]; + } - function &getElement($name) { - return $this->elements[$name]; - } - - function &getElements() { - return $this->elements; - } - - //// FORM element - // action - // method - GET, POST - // enctype - enctype="multipart/form-data" - // name - // onsubmit - // onreset - function getName() { return $this->name; } + function getElements() { + return $this->elements; + } - //// INPUT element - // type = TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT | RESET | FILE | HIDDEN | IMAGE | BUTTON - // name - // value - // checked - for type radio and checkbox - // size - width pixels or chars - // maxlength - // src - for type image - // tabindex - support A, AREA, BUTTON, INPUT, OBJECT, SELECT, and TEXTAREA - // accesskey - support A, AREA, BUTTON, INPUT, LABEL, and LEGEND, and TEXTAREA - // onfocus - // onblur - // onselect - INPUT and TEXTAREA - // onchange - function addInput($arguments) { - switch($arguments["type"]) { - - case "textfield": - case "text": - import('form.TextField'); - $el = new TextField($arguments["name"]); - $el->setMaxLength(@$arguments["maxlength"]); - if (isset($arguments["aspassword"])) $el->setAsPassword($arguments["aspassword"]); - break; - + function getName() { return $this->name; } + + // addInput - adds an input object to the form. + function addInput($arguments) { + switch($arguments['type']) { + case 'text': + import('form.TextField'); + $el = new TextField($arguments['name']); + $el->setMaxLength(@$arguments['maxlength']); + if (isset($arguments['aspassword'])) $el->setAsPassword($arguments['aspassword']); + break; + + case 'password': + import('form.PasswordField'); + $el = new PasswordField($arguments['name']); + $el->setMaxLength(@$arguments['maxlength']); + break; + +// TODO: refactoring ongoing down from here. +// aspassword - change this name to something better? Perhaps. +// Change $arguments to something better too (maybe). $args or $params? case "datefield": import('form.DateField'); $el = new DateField($arguments["name"]); @@ -162,9 +147,8 @@ class Form { if ($el!=null) { $el->setFormName($this->name); if (isset($arguments["id"])) $el->setId($arguments["id"]); - if (isset($GLOBALS["I18N"])) $el->setLocalization($GLOBALS["I18N"]); - if (isset($arguments["render"])) $el->setRenderable($arguments["render"]); - if (isset($arguments["enable"])) $el->setEnable($arguments["enable"]); + if (isset($GLOBALS["I18N"])) $el->localize($GLOBALS["I18N"]); + if (isset($arguments["enable"])) $el->setEnabled($arguments["enable"]); if (isset($arguments["style"])) $el->setStyle($arguments["style"]); if (isset($arguments["size"])) $el->setSize($arguments["size"]); @@ -181,10 +165,10 @@ class Form { function addInputElement(&$el) { if ($el && is_object($el)) { - if (isset($GLOBALS["I18N"])) $el->setLocalization($GLOBALS["I18N"]); + if (isset($GLOBALS["I18N"])) $el->localize($GLOBALS["I18N"]); $el->setFormName($this->name); - $this->elements[$el->getName()] = &$el; + $this->elements[$el->name] = &$el; } } @@ -210,7 +194,7 @@ class Form { $html = "\n"; foreach ($this->elements as $elname=>$el) { if (strtolower(get_class($this->elements[$elname]))=="hidden") { - $html .= $this->elements[$elname]->toStringControl()."\n"; + $html .= $this->elements[$elname]->getHtml()."\n"; } } $html .= "";