X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2Fform%2FFormElement.class.php;h=0443e6c9ac84306f18f8e6891241c2a53a09f4a2;hb=48ba99d8257be57e5e43a03e80ab5d8c782b5295;hp=bd8cd6d8d7d3e898f3097c4045e76761ba546f7c;hpb=ac5189157ef60820dd125400baee9f408a9ba2ea;p=timetracker.git diff --git a/WEB-INF/lib/form/FormElement.class.php b/WEB-INF/lib/form/FormElement.class.php index bd8cd6d8..0443e6c9 100644 --- a/WEB-INF/lib/form/FormElement.class.php +++ b/WEB-INF/lib/form/FormElement.class.php @@ -39,66 +39,63 @@ class FormElement { var $label = ''; // Optional label for control. var $style = ''; // Control style. var $enabled = true; // Whether the control is enabled. - var $class = 'FormElement'; // Class name for the element. - - // TODO: refactoring ongoing down from here. - var $mI18n = null; - - function __construct() { - } - - function getClass() { return $this->class; } - - function setName($name) { $this->name = $name; } - function getName() { return $this->name; } - - function setFormName($name) { $this->form_name = $name; } - function getFormName() { return $this->form_name; } - - function setValue($value) { $this->value = $value; } - function getValue() { return $this->value; } - - function setValueSafe($value) { $this->value = $value;} - function getValueSafe() { return $this->value; } - - function setId($id) { $this->id = $id; } - function getId() { return $this->id; } - - function setSize($value) { $this->size = $value; } - function getSize() { return $this->size; } - - function setLabel($label) { $this->label = $label; } - function getLabel() { return $this->label; } - - function setMaxLength($value) { $this->max_length = $value; } - function getMaxLength() { return $this->max_length; } - - function setStyle($value) { $this->style = $value; } - function getStyle() { return $this->style; } - - function setEnabled($flag) { $this->enabled = $flag; } - function isEnabled() { return $this->enabled; } - - function setOnChange($str) { $this->on_change = $str; } - function setOnClick($str) { $this->on_click = $str; } - - function setLocalization($i18n) { - $this->mI18n = $i18n; - } - - function toStringControl() { - return ""; - } - - function toStringLabel() { - return ""; - } - - function toArray() { - return array( - "label"=>$this->toStringLabel(), - "control"=>$this->toStringControl() - ); - } + var $class = 'FormElement'; // PHP class name for the element. + var $cssClass = null; // CSS class name for the element. + function __construct() { + } + + function getName() { return $this->name; } + function getClass() { return $this->class; } + function getCssClass() { return $this->cssClass; } + function setCssClass($cssClass) { $this->cssClass = $cssClass; } + + function setFormName($name) { $this->form_name = $name; } + function getFormName() { return $this->form_name; } + + function setValue($value) { $this->value = $value; } + function getValue() { return $this->value; } + + // Safe function variations are used to store/read values in/from user session for further reuse. + // They may convert data in derived classes to some standard form. For example, floats are stored + // with a dot delimiter (not comma), and dates are stored in DB_DATEFORMAT. + // This allows to reuse data in session even when user changes the deliminter or date format. + function setValueSafe($value) { $this->value = $value;} + function getValueSafe() { return $this->value; } + + function setId($id) { $this->id = $id; } + function getId() { return $this->id; } + + function setSize($value) { $this->size = $value; } + function getSize() { return $this->size; } + + function setLabel($label) { $this->label = $label; } + function getLabel() { return $this->label; } + + function setMaxLength($value) { $this->max_length = $value; } + function getMaxLength() { return $this->max_length; } + + function setStyle($value) { $this->style = $value; } + function getStyle() { return $this->style; } + + function setEnabled($flag) { $this->enabled = $flag; } + function isEnabled() { return $this->enabled; } + + function setOnChange($str) { $this->on_change = $str; } + function setOnClick($str) { $this->on_click = $str; } + + function localize() {} // Localization occurs in derived classes and is dependent on control type. + // For example, in calendar control we need to localize day and month names. + + // getHtml returns HTML for the element. + function getHtml() { return ''; } + + // getLabelHtml returns HTML code for element label. + function getLabelHtml() { return ''; } + + function toArray() { + return array( + 'label'=>$this->getLabelHtml(), + 'control'=>$this->getHtml()); + } }