00001 <?PHP
00017 include_once("Element.php");
00018
00027 class InputElement extends Element
00028 {
00029 public $m_FieldName;
00030 public $m_Label;
00031 public $m_Description;
00032 public $m_DefaultValue = "";
00033 public $m_DefaultValueRename = "Y";
00034 public $m_Required = "N";
00035 public $m_Enabled = "Y";
00036 public $m_Text;
00037 public $m_Hint;
00038
00045 protected function readMetaData(&$xmlArr)
00046 {
00047 parent::readMetaData($xmlArr);
00048 $this->m_FieldName = isset($xmlArr["ATTRIBUTES"]["FIELDNAME"]) ? $xmlArr["ATTRIBUTES"]["FIELDNAME"] : null;
00049 $this->m_Label = isset($xmlArr["ATTRIBUTES"]["LABEL"]) ? $xmlArr["ATTRIBUTES"]["LABEL"] : null;
00050 $this->m_Description = isset($xmlArr["ATTRIBUTES"]["DESCRIPTION"]) ? $xmlArr["ATTRIBUTES"]["DESCRIPTION"] : null;
00051 $this->m_DefaultValue = isset($xmlArr["ATTRIBUTES"]["DEFAULTVALUE"]) ? $xmlArr["ATTRIBUTES"]["DEFAULTVALUE"] : null;
00052 $this->m_DefaultValueRename = isset($xmlArr["ATTRIBUTES"]["DEFAULTVALUERENAME"]) ? $xmlArr["ATTRIBUTES"]["DEFAULTVALUERENAME"] : "Y";
00053 $this->m_Required = isset($xmlArr["ATTRIBUTES"]["REQUIRED"]) ? $xmlArr["ATTRIBUTES"]["REQUIRED"] : null;
00054 $this->m_Enabled = isset($xmlArr["ATTRIBUTES"]["ENABLED"]) ? $xmlArr["ATTRIBUTES"]["ENABLED"] : null;
00055 $this->m_Text = isset($xmlArr["ATTRIBUTES"]["TEXT"]) ? $xmlArr["ATTRIBUTES"]["TEXT"] : null;
00056
00057 $this->m_Hint = isset($xmlArr["ATTRIBUTES"]["HINT"]) ? $xmlArr["ATTRIBUTES"]["HINT"] : null;
00058
00059
00060 $this->m_ValuePicker = $this->prefixPackage($this->m_ValuePicker);
00061 }
00062
00063
00064
00070 protected function getEnabled()
00071 {
00072 $formObj = $this->getFormObj();
00073 return Expression::evaluateExpression($this->m_Enabled, $formObj);
00074 }
00075
00076 protected function getRequired()
00077 {
00078 $formObj = $this->getFormObj();
00079 return Expression::evaluateExpression($this->m_Required, $formObj);
00080 }
00081
00082 public function getValue()
00083 {
00084 $value=parent::getValue();
00085 if($value==$this->m_Hint)
00086 {
00087 $this->m_Value = null;
00088 return null;
00089 }
00090 return $value;
00091 }
00097 public function renderLabel()
00098 {
00099 $sHTML = $this->translateString($this->m_Label);
00100 return $sHTML;
00101 }
00102
00109 public function render()
00110 {
00111 return $this->m_Value;
00112 }
00113
00119 protected function addSCKeyScript()
00120 {
00121 $keyMap = $this->getSCKeyFuncMap();
00122 if (count($keyMap) == 0)
00123 return "";
00124 BizSystem::clientProxy()->appendScripts("shortcut", "shortcut.js");
00125 $str = "<script>\n";
00126 $formObj = $this->getFormObj();
00127 if (!$formObj->removeall_sck) {
00128 $str .= " shortcut.removeall(); \n";
00129 $formObj->removeall_sck = true;
00130 }
00131 foreach ($keyMap as $key => $func)
00132 $str .= " shortcut.remove(\"$key\"); \n";
00133 $str .= " shortcut.add(\"$key\",function() { $func }); \n";
00134 $str .= "</script>\n";
00135 return $str;
00136 }
00137 }
00138
00139 ?>