ILIAS  eassessment Revision 61809
 All Data Structures Namespaces Files Functions Variables Groups Pages
class.ilFormPropertyGUI.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
12 {
13  protected $type;
14  protected $title;
15  protected $postvar;
16  protected $info;
17  protected $alert;
18  protected $required = false;
19  protected $parentgui;
20  protected $parentform;
21  protected $hidden_title = "";
22 
29  function __construct($a_title = "", $a_postvar = "")
30  {
31  $this->setTitle($a_title);
32  $this->setPostVar($a_postvar);
33  $this->setDisabled(false);
34  }
35 
39  function &executeCommand()
40  {
41  global $ilCtrl;
42 
43  $next_class = $ilCtrl->getNextClass($this);
44  $cmd = $ilCtrl->getCmd();
45 
46  return $this->$cmd();
47  }
48 
54  protected function setType($a_type)
55  {
56  $this->type = $a_type;
57  }
58 
64  function getType()
65  {
66  return $this->type;
67  }
68 
74  function setTitle($a_title)
75  {
76  $this->title = $a_title;
77  }
78 
84  function getTitle()
85  {
86  return $this->title;
87  }
88 
94  function setPostVar($a_postvar)
95  {
96  $this->postvar = $a_postvar;
97  }
98 
104  function getPostVar()
105  {
106  return $this->postvar;
107  }
108 
114  function getFieldId()
115  {
116  $id = str_replace("[", "__", $this->getPostVar());
117  $id = str_replace("]", "__", $id);
118 
119  return $id;
120  }
121 
127  function setInfo($a_info)
128  {
129  $this->info = $a_info;
130  }
131 
137  function getInfo()
138  {
139  return $this->info;
140  }
141 
147  function setAlert($a_alert)
148  {
149  $this->alert = $a_alert;
150  }
151 
157  function getAlert()
158  {
159  return $this->alert;
160  }
161 
167  function setRequired($a_required)
168  {
169  $this->required = $a_required;
170  }
171 
177  function getRequired()
178  {
179  return $this->required;
180  }
181 
187  function setDisabled($a_disabled)
188  {
189  $this->disabled = $a_disabled;
190  }
191 
197  function getDisabled()
198  {
199  return $this->disabled;
200  }
201 
207  function checkInput()
208  {
209  return false; // please overwrite
210  }
211 
217  function setParentForm($a_parentform)
218  {
219  $this->setParent($a_parentform);
220  }
221 
227  function getParentForm()
228  {
229  return $this->getParent();
230  }
231 
237  function setParent($a_val)
238  {
239  $this->parent_gui = $a_val;
240  }
241 
247  function getParent()
248  {
249  return $this->parent_gui;
250  }
251 
256  public function getSubForm()
257  {
258  return "";
259  }
260 
265  public function hideSubForm()
266  {
267  return false;
268  }
269 
275  function setHiddenTitle($a_val)
276  {
277  $this->hidden_title = $a_val;
278  }
279 
285  function getHiddenTitle()
286  {
287  return $this->hidden_title;
288  }
289 
295  function getItemByPostVar($a_post_var)
296  {
297  if ($this->getPostVar() == $a_post_var)
298  {
299  return $this;
300  }
301 
302  return false;
303  }
304 
308  function serializeData()
309  {
310  return serialize($this->getValue());
311  }
312 
316  function unserializeData($a_data)
317  {
318  $data = unserialize($a_data);
319 
320  if ($data)
321  {
322  $this->setValue($data);
323  }
324  else
325  {
326  $this->setValue(false);
327  }
328  }
329 
333  function writeToSession()
334  {
335  $parent = $this->getParent();
336  if (!is_object($parent))
337  {
338  die("You must set parent for ".get_class($this)." to use serialize feature.");
339  }
340  $_SESSION["form_".$parent->getId()][$this->getFieldId()] =
341  $this->serializeData();
342  }
343 
347  function clearFromSession()
348  {
349  $parent = $this->getParent();
350  if (!is_object($parent))
351  {
352  die("You must set parent for ".get_class($this)." to use serialize feature.");
353  }
354  $_SESSION["form_".$parent->getId()][$this->getFieldId()] = false;
355  }
356 
360  function readFromSession()
361  {
362  $parent = $this->getParent();
363  if (!is_object($parent))
364  {
365  die("You must set parent for ".get_class($this)." to use serialize feature.");
366  }
367  $this->unserializeData($_SESSION["form_".$parent->getId()][$this->getFieldId()]);
368  }
369 
373  function getHiddenTag($a_post_var, $a_value)
374  {
375  return '<input type="hidden" name="'.$a_post_var.'" value="'.ilUtil::prepareFormOutput($a_value).'" />';
376  }
377 
378 
379 }
380 ?>