ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f87
ilImageWizardInputGUI Class Reference

This class represents a single choice wizard property in a property form. More...

+ Inheritance diagram for ilImageWizardInputGUI:
+ Collaboration diagram for ilImageWizardInputGUI:

Public Member Functions

 __construct ($a_title="", $a_postvar="")
 Constructor. More...
 
 setValue ($a_value)
 Set Value. More...
 
 setSuffixes ($a_suffixes)
 Set Accepted Suffixes. More...
 
 getSuffixes ()
 Get Accepted Suffixes. More...
 
 setValues ($a_values)
 Set Values. More...
 
 getValues ()
 Get Values. More...
 
 setQuestionObject ($a_value)
 Set question object. More...
 
 getQuestionObject ()
 Get question object. More...
 
 setAllowMove ($a_allow_move)
 Set allow move. More...
 
 getAllowMove ()
 Get allow move. More...
 
 checkInput ()
 Check input, strip slashes etc. More...
 
 insert (&$a_tpl)
 Insert property html. More...
 
- Public Member Functions inherited from ilTextInputGUI
 __construct ($a_title="", $a_postvar="")
 Constructor. More...
 
 setValue ($a_value)
 Set Value. More...
 
 getValue ()
 Get Value. More...
 
 setValidationFailureMessage ($a_msg)
 Set message string for validation failure. More...
 
 getValidationFailureMessage ()
 
 setValidationRegexp ($a_value)
 Set validation regexp. More...
 
 getValidationRegexp ()
 Get validation regexp. More...
 
 setMaxLength ($a_maxlength)
 Set Max Length. More...
 
 getMaxLength ()
 Get Max Length. More...
 
 setSize ($a_size)
 Set Size. More...
 
 setInlineStyle ($a_style)
 Set inline style. More...
 
 getInlineStyle ()
 Get inline style. More...
 
 setCssClass ($a_class)
 
 getCssClass ()
 
 setValueByArray ($a_values)
 Set value by array. More...
 
 getSize ()
 Get Size. More...
 
 setSuffix ($a_value)
 Set suffix. More...
 
 getSuffix ()
 Get suffix. More...
 
 setInputType ($a_type)
 set input type More...
 
 getInputType ()
 get input type More...
 
 setSubmitFormOnEnter ($a_val)
 Set submit form on enter. More...
 
 getSubmitFormOnEnter ()
 Get submit form on enter. More...
 
 checkInput ()
 Check input, strip slashes etc. More...
 
 getDataSource ()
 get datasource link for js autocomplete More...
 
 setDataSource ($href, $a_delimiter=null)
 set datasource link for js autocomplete More...
 
 setDataSourceSubmitOnSelection ($a_stat)
 
 getDataSourceSubmitOnSelection ()
 
 setDataSourceSubmitUrl ($a_url)
 
 getDataSourceSubmitUrl ()
 
 setMultiValues (array $a_values)
 
 insert (&$a_tpl)
 Insert property html. More...
 
 getTableFilterHTML ()
 Get HTML for table filter. More...
 
 getToolbarHTML ()
 Get HTML for toolbar. More...
 
 setDisableHtmlAutoComplete ($autocomplete)
 
 isHtmlAutoCompleteDisabled ()
 
- Public Member Functions inherited from ilSubEnabledFormPropertyGUI
 addSubItem ($a_item)
 Add Subitem. More...
 
 getSubItems ()
 Get Subitems. More...
 
 getSubInputItemsRecursive ()
 returns a flat array of possibly existing subitems recursively More...
 
 checkSubItemsInput ()
 Check SubItems. More...
 
 getSubForm ()
 Get sub form html. More...
 
 getItemByPostVar ($a_post_var)
 Get item by post var. More...
 
- Public Member Functions inherited from ilFormPropertyGUI
 __construct ($a_title="", $a_postvar="")
 Constructor. More...
 
executeCommand ()
 Execute command. More...
 
 getType ()
 Get Type. More...
 
 setTitle ($a_title)
 Set Title. More...
 
 getTitle ()
 Get Title. More...
 
 setPostVar ($a_postvar)
 Set Post Variable. More...
 
 getPostVar ()
 Get Post Variable. More...
 
 getFieldId ()
 Get Post Variable. More...
 
 setInfo ($a_info)
 Set Information Text. More...
 
 getInfo ()
 Get Information Text. More...
 
 setAlert ($a_alert)
 Set Alert Text. More...
 
 getAlert ()
 Get Alert Text. More...
 
 setRequired ($a_required)
 Set Required. More...
 
 getRequired ()
 Get Required. More...
 
 setDisabled ($a_disabled)
 Set Disabled. More...
 
 getDisabled ()
 Get Disabled. More...
 
 checkInput ()
 Check input, strip slashes etc. More...
 
 setParentForm ($a_parentform)
 Set Parent Form. More...
 
 getParentForm ()
 Get Parent Form. More...
 
 setParent ($a_val)
 Set Parent GUI object. More...
 
 getParent ()
 Get Parent GUI object. More...
 
 getSubForm ()
 Get sub form html. More...
 
 hideSubForm ()
 Sub form hidden on init? More...
 
 setHiddenTitle ($a_val)
 Set hidden title (for screenreaders) More...
 
 getHiddenTitle ()
 Get hidden title. More...
 
 getItemByPostVar ($a_post_var)
 Get item by post var. More...
 
 serializeData ()
 serialize data More...
 
 unserializeData ($a_data)
 unserialize data More...
 
 writeToSession ()
 Write to session. More...
 
 clearFromSession ()
 Clear session value. More...
 
 readFromSession ()
 Read from session. More...
 
 getHiddenTag ($a_post_var, $a_value)
 Get hidden tag (used for disabled properties) More...
 
 setMulti ($a_multi, $a_sortable=false, $a_addremove=true)
 Set Multi. More...
 
 getMulti ()
 Get Multi. More...
 
 setMultiValues (array $a_values)
 Set multi values. More...
 
 getMultiValues ()
 Get multi values. More...
 
 getContentOutsideFormTag ()
 Get content that has to reside outside of the parent form tag, e.g. More...
 
 removeProhibitedCharacters ($a_text)
 Remove prohibited characters see #19159. More...
 

Protected Attributes

 $values = array()
 
 $allowMove = false
 
 $qstObject = null
 
 $suffixes = array()
 
- Protected Attributes inherited from ilTextInputGUI
 $value
 
 $maxlength = 200
 
 $size = 40
 
 $validationRegexp
 
 $validationFailureMessage = ''
 
 $suffix
 
 $style_css
 
 $css_class
 
 $ajax_datasource
 
 $ajax_datasource_delimiter
 
 $ajax_datasource_commit = FALSE
 
 $ajax_datasource_commit_url
 
 $submit_form_on_enter = false
 
 $autocomplete_disabled = false
 
- Protected Attributes inherited from ilSubEnabledFormPropertyGUI
 $sub_items = array()
 
- Protected Attributes inherited from ilFormPropertyGUI
 $type
 
 $title
 
 $postvar
 
 $info
 
 $alert
 
 $required = false
 
 $parentgui
 
 $parentform
 
 $hidden_title = ""
 
 $multi = false
 
 $multi_sortable = false
 
 $multi_addremove = true
 
 $multi_values
 

Additional Inherited Members

- Protected Member Functions inherited from ilFormPropertyGUI
 setType ($a_type)
 Set Type. More...
 
 getMultiIconsHTML ()
 Get HTML for multiple value icons. More...
 

Detailed Description

This class represents a single choice wizard property in a property form.

Author
Helmut Schottmüller ilias.nosp@m.@aur.nosp@m.ealis.nosp@m..de
Version
$Id$

Definition at line 14 of file class.ilImageWizardInputGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilImageWizardInputGUI::__construct (   $a_title = "",
  $a_postvar = "" 
)

Constructor.

Parameters
string$a_titleTitle
string$a_postvarPost Variable

Definition at line 27 of file class.ilImageWizardInputGUI.php.

References assQuestion\getAllowedImageFileExtensions(), ilTextInputGUI\setSize(), and setSuffixes().

28  {
29  parent::__construct($a_title, $a_postvar);
31  $this->setSize('25');
32  $this->validationRegexp = "";
33  }
setSuffixes($a_suffixes)
Set Accepted Suffixes.
setSize($a_size)
Set Size.
static getAllowedImageFileExtensions()
+ Here is the call graph for this function:

Member Function Documentation

◆ checkInput()

ilImageWizardInputGUI::checkInput ( )

Check input, strip slashes etc.

set alert, if input is not ok.

Returns
boolean Input ok, true/false

Definition at line 140 of file class.ilImageWizardInputGUI.php.

References $_POST, $filename, $lng, ilTextInputGUI\$suffix, ilSubEnabledFormPropertyGUI\checkSubItemsInput(), ilFormPropertyGUI\getPostVar(), ilFormPropertyGUI\getRequired(), getSuffixes(), ilFormPropertyGUI\setAlert(), ilUtil\stripSlashesRecursive(), and ilUtil\virusHandling().

141  {
142  global $lng;
143 
144  if (is_array($_POST[$this->getPostVar()])) $_POST[$this->getPostVar()] = ilUtil::stripSlashesRecursive($_POST[$this->getPostVar()]);
145  if (is_array($_FILES[$this->getPostVar()]['error']['image']))
146  {
147  foreach ($_FILES[$this->getPostVar()]['error']['image'] as $index => $error)
148  {
149  // error handling
150  if ($error > 0)
151  {
152  switch ($error)
153  {
154  case UPLOAD_ERR_INI_SIZE:
155  $this->setAlert($lng->txt("form_msg_file_size_exceeds"));
156  return false;
157  break;
158 
159  case UPLOAD_ERR_FORM_SIZE:
160  $this->setAlert($lng->txt("form_msg_file_size_exceeds"));
161  return false;
162  break;
163 
164  case UPLOAD_ERR_PARTIAL:
165  $this->setAlert($lng->txt("form_msg_file_partially_uploaded"));
166  return false;
167  break;
168 
169  case UPLOAD_ERR_NO_FILE:
170  if ($this->getRequired())
171  {
172  if (!strlen($_POST[$this->getPostVar()]['imagename'][$index]))
173  {
174  $this->setAlert($lng->txt("form_msg_file_no_upload"));
175  return false;
176  }
177  }
178  break;
179 
180  case UPLOAD_ERR_NO_TMP_DIR:
181  $this->setAlert($lng->txt("form_msg_file_missing_tmp_dir"));
182  return false;
183  break;
184 
185  case UPLOAD_ERR_CANT_WRITE:
186  $this->setAlert($lng->txt("form_msg_file_cannot_write_to_disk"));
187  return false;
188  break;
189 
190  case UPLOAD_ERR_EXTENSION:
191  $this->setAlert($lng->txt("form_msg_file_upload_stopped_ext"));
192  return false;
193  break;
194  }
195  }
196  }
197  }
198  else
199  {
200  if ($this->getRequired())
201  {
202  $this->setAlert($lng->txt("form_msg_file_no_upload"));
203  return false;
204  }
205  }
206 
207  if (is_array($_FILES[$this->getPostVar()]['tmp_name']['image']))
208  {
209  foreach ($_FILES[$this->getPostVar()]['tmp_name']['image'] as $index => $tmpname)
210  {
211  $filename = $_FILES[$this->getPostVar()]['name']['image'][$index];
212  $filename_arr = pathinfo($filename);
213  $suffix = $filename_arr["extension"];
214  $mimetype = $_FILES[$this->getPostVar()]['type']['image'][$index];
215  $size_bytes = $_FILES[$this->getPostVar()]['size']['image'][$index];
216  // check suffixes
217  if (strlen($tmpname) && is_array($this->getSuffixes()))
218  {
219  if (!in_array(strtolower($suffix), $this->getSuffixes()))
220  {
221  $this->setAlert($lng->txt("form_msg_file_wrong_file_type"));
222  return false;
223  }
224  }
225  }
226  }
227 
228  if (is_array($_FILES[$this->getPostVar()]['tmp_name']['image']))
229  {
230  foreach ($_FILES[$this->getPostVar()]['tmp_name']['image'] as $index => $tmpname)
231  {
232  $filename = $_FILES[$this->getPostVar()]['name']['image'][$index];
233  $filename_arr = pathinfo($filename);
234  $suffix = $filename_arr["extension"];
235  $mimetype = $_FILES[$this->getPostVar()]['type']['image'][$index];
236  $size_bytes = $_FILES[$this->getPostVar()]['size']['image'][$index];
237  // virus handling
238  if (strlen($tmpname))
239  {
240  $vir = ilUtil::virusHandling($tmpname, $filename);
241  if ($vir[0] == false)
242  {
243  $this->setAlert($lng->txt("form_msg_file_virus_found")."<br />".$vir[1]);
244  return false;
245  }
246  }
247  }
248  }
249 
250  return $this->checkSubItemsInput();
251  }
$_POST['username']
Definition: cron.php:12
static virusHandling($a_file, $a_orig_name="", $a_clean=true)
scan file for viruses and clean files if possible
getPostVar()
Get Post Variable.
setAlert($a_alert)
Set Alert Text.
static stripSlashesRecursive($a_data, $a_strip_html=true, $a_allow="")
Strip slashes from array and sub-arrays.
$filename
Definition: buildRTE.php:89
global $lng
Definition: privfeed.php:40
getSuffixes()
Get Accepted Suffixes.
+ Here is the call graph for this function:

◆ getAllowMove()

ilImageWizardInputGUI::getAllowMove ( )

Get allow move.

Returns
boolean Allow move

Definition at line 130 of file class.ilImageWizardInputGUI.php.

References $allowMove.

Referenced by insert().

+ Here is the caller graph for this function:

◆ getQuestionObject()

ilImageWizardInputGUI::getQuestionObject ( )

Get question object.

Returns
object Value

Definition at line 110 of file class.ilImageWizardInputGUI.php.

References $qstObject.

◆ getSuffixes()

ilImageWizardInputGUI::getSuffixes ( )

Get Accepted Suffixes.

Returns
array Accepted Suffixes

Definition at line 70 of file class.ilImageWizardInputGUI.php.

References $suffixes.

Referenced by checkInput(), and insert().

+ Here is the caller graph for this function:

◆ getValues()

ilImageWizardInputGUI::getValues ( )

Get Values.

Returns
array Values

Definition at line 90 of file class.ilImageWizardInputGUI.php.

References $values.

◆ insert()

ilImageWizardInputGUI::insert ( $a_tpl)

Insert property html.

Returns
int Size

Definition at line 258 of file class.ilImageWizardInputGUI.php.

References $lng, ilTextInputGUI\$suffix, $tpl, ilTextInputGUI\$value, ilGlyphGUI\ADD, ilGlyphGUI\DOWN, ilGlyphGUI\get(), getAllowMove(), ilFormPropertyGUI\getFieldId(), ilUtil\getFileSizeInfo(), ilFormPropertyGUI\getPostVar(), getSuffixes(), ilUtil\prepareFormOutput(), ilGlyphGUI\REMOVE, and ilGlyphGUI\UP.

259  {
260  global $lng;
261 
262  $tpl = new ilTemplate("tpl.prop_imagewizardinput.html", true, true, "Modules/TestQuestionPool");
263  $i = 0;
264  foreach ($this->values as $value)
265  {
266  if (strlen($value))
267  {
268  $imagename = $this->qstObject->getImagePathWeb() . $value;
269  if ($this->qstObject->getThumbSize())
270  {
271  if (@file_exists($this->qstObject->getImagePath() . $this->qstObject->getThumbPrefix() . $value))
272  {
273  $imagename = $this->qstObject->getImagePathWeb() . $this->qstObject->getThumbPrefix() . $value;
274  }
275  }
276  $tpl->setCurrentBlock('image');
277  $tpl->setVariable('SRC_IMAGE', $imagename);
278  $tpl->setVariable('IMAGE_NAME', $value);
279  $tpl->setVariable('ALT_IMAGE', ilUtil::prepareFormOutput($value));
280  $tpl->setVariable("TXT_DELETE_EXISTING", $lng->txt("delete_existing_file"));
281  $tpl->setVariable("IMAGE_ROW_NUMBER", $i);
282  $tpl->setVariable("IMAGE_POST_VAR", $this->getPostVar());
283  $tpl->parseCurrentBlock();
284  }
285  $tpl->setCurrentBlock('addimage');
286  $tpl->setVariable("IMAGE_ID", $this->getPostVar() . "[image][$i]");
287  $tpl->setVariable("IMAGE_SUBMIT", $lng->txt("upload"));
288  $tpl->setVariable("IMAGE_ROW_NUMBER", $i);
289  $tpl->setVariable("IMAGE_POST_VAR", $this->getPostVar());
290  $tpl->parseCurrentBlock();
291 
292  if ($this->getAllowMove())
293  {
294  $tpl->setCurrentBlock("move");
295  $tpl->setVariable("CMD_UP", "cmd[up" . $this->getFieldId() . "][$i]");
296  $tpl->setVariable("CMD_DOWN", "cmd[down" . $this->getFieldId() . "][$i]");
297  $tpl->setVariable("ID", $this->getPostVar() . "[$i]");
298  $tpl->setVariable("UP_BUTTON", ilGlyphGUI::get(ilGlyphGUI::UP));
299  $tpl->setVariable("DOWN_BUTTON", ilGlyphGUI::get(ilGlyphGUI::DOWN));
300  $tpl->parseCurrentBlock();
301  }
302  $tpl->setCurrentBlock("row");
303  $tpl->setVariable("POST_VAR", $this->getPostVar());
304  $tpl->setVariable("ROW_NUMBER", $i);
305  $tpl->setVariable("ID", $this->getPostVar() . "[answer][$i]");
306  $tpl->setVariable("CMD_ADD", "cmd[add" . $this->getFieldId() . "][$i]");
307  $tpl->setVariable("CMD_REMOVE", "cmd[remove" . $this->getFieldId() . "][$i]");
308  $tpl->setVariable("ADD_BUTTON", ilGlyphGUI::get(ilGlyphGUI::ADD));
309  $tpl->setVariable("REMOVE_BUTTON", ilGlyphGUI::get(ilGlyphGUI::REMOVE));
310  $tpl->parseCurrentBlock();
311  $i++;
312  }
313 
314  if (is_array($this->getSuffixes()))
315  {
316  $suff_str = $delim = "";
317  foreach($this->getSuffixes() as $suffix)
318  {
319  $suff_str.= $delim.".".$suffix;
320  $delim = ", ";
321  }
322  $tpl->setCurrentBlock('allowed_image_suffixes');
323  $tpl->setVariable("TXT_ALLOWED_SUFFIXES", $lng->txt("file_allowed_suffixes")." ".$suff_str);
324  $tpl->parseCurrentBlock();
325  }
326  /*
327  $tpl->setCurrentBlock("image_heading");
328  $tpl->setVariable("ANSWER_IMAGE", $lng->txt('answer_image'));
329  $tpl->parseCurrentBlock();
330  */
331 
332  $tpl->setVariable("TXT_MAX_SIZE", ilUtil::getFileSizeInfo());
333  $tpl->setVariable("ELEMENT_ID", $this->getPostVar());
334  $tpl->setVariable("TEXT_YES", $lng->txt('yes'));
335  $tpl->setVariable("TEXT_NO", $lng->txt('no'));
336  $tpl->setVariable("DELETE_IMAGE_HEADER", $lng->txt('delete_image_header'));
337  $tpl->setVariable("DELETE_IMAGE_QUESTION", $lng->txt('delete_image_question'));
338  $tpl->setVariable("ANSWER_TEXT", $lng->txt('answer_text'));
339  $tpl->setVariable("COMMANDS_TEXT", $lng->txt('actions'));
340 
341  $a_tpl->setCurrentBlock("prop_generic");
342  $a_tpl->setVariable("PROP_GENERIC", $tpl->get());
343  $a_tpl->parseCurrentBlock();
344 
345  global $tpl;
346  $tpl->addJavascript("./Services/Form/js/ServiceFormWizardInput.js");
347  $tpl->addJavascript("./Modules/TestQuestionPool/templates/default/imagewizard.js");
348  }
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
getPostVar()
Get Post Variable.
static get($a_glyph, $a_text="")
Get glyph html.
static getFileSizeInfo()
global $tpl
Definition: ilias.php:8
getFieldId()
Get Post Variable.
special template class to simplify handling of ITX/PEAR
global $lng
Definition: privfeed.php:40
getSuffixes()
Get Accepted Suffixes.
+ Here is the call graph for this function:

◆ setAllowMove()

ilImageWizardInputGUI::setAllowMove (   $a_allow_move)

Set allow move.

Parameters
boolean$a_allow_moveAllow move

Definition at line 120 of file class.ilImageWizardInputGUI.php.

121  {
122  $this->allowMove = $a_allow_move;
123  }

◆ setQuestionObject()

ilImageWizardInputGUI::setQuestionObject (   $a_value)

Set question object.

Parameters
object$a_valuetest object

Definition at line 100 of file class.ilImageWizardInputGUI.php.

101  {
102  $this->qstObject =& $a_value;
103  }

◆ setSuffixes()

ilImageWizardInputGUI::setSuffixes (   $a_suffixes)

Set Accepted Suffixes.

Parameters
array$a_suffixesAccepted Suffixes

Definition at line 60 of file class.ilImageWizardInputGUI.php.

Referenced by __construct().

61  {
62  $this->suffixes = $a_suffixes;
63  }
+ Here is the caller graph for this function:

◆ setValue()

ilImageWizardInputGUI::setValue (   $a_value)

Set Value.

Parameters
string$a_valueValue

Definition at line 40 of file class.ilImageWizardInputGUI.php.

References ilTextInputGUI\$value.

41  {
42  $this->values = array();
43  if (is_array($a_value))
44  {
45  if (is_array($a_value['count']))
46  {
47  foreach ($a_value['count'] as $index => $value)
48  {
49  array_push($this->values, $a_value['imagename'][$index]);
50  }
51  }
52  }
53  }

◆ setValues()

ilImageWizardInputGUI::setValues (   $a_values)

Set Values.

Parameters
array$a_valueValue

Definition at line 80 of file class.ilImageWizardInputGUI.php.

81  {
82  $this->values = $a_values;
83  }

Field Documentation

◆ $allowMove

ilImageWizardInputGUI::$allowMove = false
protected

Definition at line 17 of file class.ilImageWizardInputGUI.php.

Referenced by getAllowMove().

◆ $qstObject

ilImageWizardInputGUI::$qstObject = null
protected

Definition at line 18 of file class.ilImageWizardInputGUI.php.

Referenced by getQuestionObject().

◆ $suffixes

ilImageWizardInputGUI::$suffixes = array()
protected

Definition at line 19 of file class.ilImageWizardInputGUI.php.

Referenced by getSuffixes().

◆ $values

ilImageWizardInputGUI::$values = array()
protected

Definition at line 16 of file class.ilImageWizardInputGUI.php.

Referenced by getValues().


The documentation for this class was generated from the following file: