XCL Web Application Platform 2.5.0
The XoopsCube Legacy Project
Loading...
Searching...
No Matches
formelement.php
1<?php
13
14class XoopsFormElement
15{
16
24 public $_name;
25
30 public $_caption;
31
36 public $_accesskey = '';
37
42 public $_class = '';
43
48 public $_hidden = false;
49
54 public $_extra = '';
55
60 public $_required = false;
61
66 public $_description = '';
67
72 public $_id = null;
74
75
80 public function __construct()
81 {
82 exit('This class cannot be instantiated!');
83 }
84 public function XoopsFormElement()
85 {
86 return self::__construct();
87 }
88
94 public function isContainer()
95 {
96 return false;
97 }
98
104 public function setName($name)
105 {
106 $this->_name = trim($name);
107 }
108
115 public function getName($encode=true)
116 {
117 if (false != $encode) {
118 return str_replace(array("'", '&amp;'), array('&#039;', '&'), htmlspecialchars($this->_name));
119 }
120 return $this->_name;
121 }
122
127 public function setId($id)
128 {
129 $this->_id = $id;
130 }
131
135 public function getId()
136 {
137 return null != $this->_id ? $this->_id : $this->getName();
138 }
139
145 public function setAccessKey($key)
146 {
147 $this->_accesskey = trim($key);
148 }
149
154 public function getAccessKey()
155 {
156 return $this->_accesskey;
157 }
158
164 public function getAccessString($str)
165 {
166 $access = $this->getAccessKey();
167 if (!empty($access) && (false !== ($pos = strpos($str, $access)))) {
168 return substr($str, 0, $pos) . '<span style="text-decoration:underline">' . $str[$pos] . '</span>' . substr($str, $pos+1);
169 }
170 return $str;
171 }
172
178 public function setClass($class)
179 {
180 $class = trim($class);
181 if (empty($class)) {
182 $this->_class = '';
183 } else {
184 $this->_class .= (empty($this->_class) ? '' : ' ') . $class;
185 }
186 }
187
192 public function getClass()
193 {
194 return $this->_class;
195 }
196
202 public function setCaption($caption)
203 {
204 $this->_caption = trim($caption);
205 }
206
212 public function getCaption()
213 {
214 return $this->_caption;
215 }
216
222 public function setDescription($description)
223 {
224 $this->_description = trim($description);
225 }
226
232 public function getDescription()
233 {
234 return $this->_description;
235 }
236
241 public function setHidden()
242 {
243 $this->_hidden = true;
244 }
245
251 public function isHidden()
252 {
253 return $this->_hidden;
254 }
255
256 public function isBreak()
257 {
258 return false;
259 }
260
271 public function setExtra($extra, $replace = false)
272 {
273 if ($replace) {
274 $this->_extra = ' ' . trim($extra);
275 } else {
276 $this->_extra .= ' ' . trim($extra);
277 }
278 return $this->_extra;
279 }
280
286 public function getExtra()
287 {
288 if (isset($this->_extra)) {
289 return $this->_extra;
290 }
291 }
292
299 public function render()
300 {
301 }
302
306 public function getMessageForJS()
307 {
308 $eltcaption = trim($this->getCaption());
309 $eltmsg = empty($eltcaption) ? sprintf(_FORM_ENTER, $eltname) : sprintf(_FORM_ENTER, $eltcaption);
310 $eltmsg = str_replace('"', '\"', stripslashes($eltmsg));
311
312 return $eltmsg;
313 }
314}
setDescription($description)
setCaption($caption)
getName($encode=true)
setExtra($extra, $replace=false)