X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2Fform%2FFormElement.class.php;h=0443e6c9ac84306f18f8e6891241c2a53a09f4a2;hb=ed41335d63e71a11d30e92f4367106e9398adf9d;hp=7bd28ab527cd135a4f0e873dfe663f068a0adbea;hpb=8368d1ed9b3acdd13dc8ef325161661186935435;p=timetracker.git diff --git a/WEB-INF/lib/form/FormElement.class.php b/WEB-INF/lib/form/FormElement.class.php index 7bd28ab5..0443e6c9 100644 --- a/WEB-INF/lib/form/FormElement.class.php +++ b/WEB-INF/lib/form/FormElement.class.php @@ -33,77 +33,69 @@ class FormElement { var $form_name = ''; // Form name the control is in. var $value = ''; // Value of the control. var $size = ''; // Control size. - var $max_length = ''; // Max lenght of text in control. + var $max_length = ''; // Max length of text in control. var $on_change = ''; // What happens when value of control changes. - // TODO: refactoring ongoing down from here. - var $mOnClick = ""; - var $mOnKeyPress = ""; - var $mOnFocus = ""; - var $mLabel = ""; - var $mStyle = ""; - var $mRenderable = true; - var $mEnabled = true; - var $cClassName = "FormElement"; - var $mI18n = null; - - function __construct() { - } - - function getClass() { return $this->cClassName; } - - 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->mLabel = $label; } - function getLabel() { return $this->mLabel; } - - function setMaxLength($value) { $this->max_length = $value; } - function getMaxLength() { return $this->max_length; } - - function setStyle($value) { $this->mStyle = $value; } - function getStyle() { return $this->mStyle; } - - function setRenderable($flag) { $this->mRenderable = $flag; } - function isRenderable() { return $this->mRenderable; } - - function setEnable($flag) { $this->mEnabled = $flag; } - function isEnable() { return $this->mEnabled; } - - function setOnChange($str) { $this->on_change = $str; } - function setOnClick($str) { $this->mOnClick = $str; } - - function setLocalization($i18n) { - $this->mI18n = $i18n; - } - - function toStringControl() { - return ""; - } - - function toStringLabel() { - return ""; - } - - function toArray() { - return array( - "label"=>$this->toStringLabel(), - "control"=>$this->toStringControl() - ); - } + var $on_click = ''; // What happens when the control is clicked. + var $label = ''; // Optional label for control. + var $style = ''; // Control style. + var $enabled = true; // Whether the control is enabled. + 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()); + } }