ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
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...
 
 stripSlashesAddSpaceFallback ($a_str)
 Strip slashes with add space fallback, see https://www.ilias.de/mantis/view.php?id=19727. More...
 
 getTableFilterLabelFor ()
 Get label "for" attribute value for filter. More...
 
 getFormLabelFor ()
 Get label "for" attribute value for form. More...
 
- Public Member Functions inherited from ilTableFilterItem
 getTableFilterLabelFor ()
 Get label "for" attribute value. 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
 $ctrl
 
 $lng
 
 $type
 
 $title
 
 $postvar
 
 $info
 
 $alert
 
 $required = false
 
 $parentgui
 
 $parentform
 
 $hidden_title = ""
 
 $multi = false
 
 $multi_sortable = false
 
 $multi_addremove = true
 
 $multi_values
 

Additional Inherited Members

- Static Public Member Functions inherited from ilFormPropertyGUI
static removeProhibitedCharacters ($a_text)
 Remove prohibited characters see #19159. More...
 
- 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\getAllowedImageMaterialFileExtensions(), ilTextInputGUI\setSize(), and setSuffixes().

28  {
29  parent::__construct($a_title, $a_postvar);
31  $this->setSize('25');
32  $this->validationRegexp = "";
33  }
static getAllowedImageMaterialFileExtensions()
setSuffixes($a_suffixes)
Set Accepted Suffixes.
setSize($a_size)
Set Size.
+ 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 137 of file class.ilImageWizardInputGUI.php.

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

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

◆ getAllowMove()

ilImageWizardInputGUI::getAllowMove ( )

Get allow move.

Returns
boolean Allow move

Definition at line 127 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 107 of file class.ilImageWizardInputGUI.php.

References $qstObject.

◆ getSuffixes()

ilImageWizardInputGUI::getSuffixes ( )

Get Accepted Suffixes.

Returns
array Accepted Suffixes

Definition at line 67 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 87 of file class.ilImageWizardInputGUI.php.

References $values.

◆ insert()

ilImageWizardInputGUI::insert (   $a_tpl)

Insert property html.

Returns
int Size

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

References $DIC, $i, ilFormPropertyGUI\$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.

242  {
243  global $DIC;
244  $lng = $DIC['lng'];
245 
246  $tpl = new ilTemplate("tpl.prop_imagewizardinput.html", true, true, "Modules/TestQuestionPool");
247  $i = 0;
248  foreach ($this->values as $value) {
249  if (strlen($value)) {
250  $imagename = $this->qstObject->getImagePathWeb() . $value;
251  if ($this->qstObject->getThumbSize()) {
252  if (@file_exists($this->qstObject->getImagePath() . $this->qstObject->getThumbPrefix() . $value)) {
253  $imagename = $this->qstObject->getImagePathWeb() . $this->qstObject->getThumbPrefix() . $value;
254  }
255  }
256  $tpl->setCurrentBlock('image');
257  $tpl->setVariable('SRC_IMAGE', $imagename);
258  $tpl->setVariable('IMAGE_NAME', $value);
259  $tpl->setVariable('ALT_IMAGE', ilUtil::prepareFormOutput($value));
260  $tpl->setVariable("TXT_DELETE_EXISTING", $lng->txt("delete_existing_file"));
261  $tpl->setVariable("IMAGE_ROW_NUMBER", $i);
262  $tpl->setVariable("IMAGE_POST_VAR", $this->getPostVar());
263  $tpl->parseCurrentBlock();
264  }
265  $tpl->setCurrentBlock('addimage');
266  $tpl->setVariable("IMAGE_BROWSE", $lng->txt('select_file'));
267  $tpl->setVariable("IMAGE_ID", $this->getPostVar() . "[image][$i]");
268  $tpl->setVariable("IMAGE_SUBMIT", $lng->txt("upload"));
269  $tpl->setVariable("IMAGE_ROW_NUMBER", $i);
270  $tpl->setVariable("IMAGE_POST_VAR", $this->getPostVar());
271  $tpl->parseCurrentBlock();
272 
273  if ($this->getAllowMove()) {
274  $tpl->setCurrentBlock("move");
275  $tpl->setVariable("CMD_UP", "cmd[up" . $this->getFieldId() . "][$i]");
276  $tpl->setVariable("CMD_DOWN", "cmd[down" . $this->getFieldId() . "][$i]");
277  $tpl->setVariable("ID", $this->getPostVar() . "[$i]");
278  $tpl->setVariable("UP_BUTTON", ilGlyphGUI::get(ilGlyphGUI::UP));
279  $tpl->setVariable("DOWN_BUTTON", ilGlyphGUI::get(ilGlyphGUI::DOWN));
280  $tpl->parseCurrentBlock();
281  }
282  $tpl->setCurrentBlock("row");
283  $tpl->setVariable("POST_VAR", $this->getPostVar());
284  $tpl->setVariable("ROW_NUMBER", $i);
285  $tpl->setVariable("ID", $this->getPostVar() . "[answer][$i]");
286  $tpl->setVariable("CMD_ADD", "cmd[add" . $this->getFieldId() . "][$i]");
287  $tpl->setVariable("CMD_REMOVE", "cmd[remove" . $this->getFieldId() . "][$i]");
288  $tpl->setVariable("ADD_BUTTON", ilGlyphGUI::get(ilGlyphGUI::ADD));
289  $tpl->setVariable("REMOVE_BUTTON", ilGlyphGUI::get(ilGlyphGUI::REMOVE));
290  $tpl->parseCurrentBlock();
291  $i++;
292  }
293 
294  if (is_array($this->getSuffixes())) {
295  $suff_str = $delim = "";
296  foreach ($this->getSuffixes() as $suffix) {
297  $suff_str .= $delim . "." . $suffix;
298  $delim = ", ";
299  }
300  $tpl->setCurrentBlock('allowed_image_suffixes');
301  $tpl->setVariable("TXT_ALLOWED_SUFFIXES", $lng->txt("file_allowed_suffixes") . " " . $suff_str);
302  $tpl->parseCurrentBlock();
303  }
304  /*
305  $tpl->setCurrentBlock("image_heading");
306  $tpl->setVariable("ANSWER_IMAGE", $lng->txt('answer_image'));
307  $tpl->parseCurrentBlock();
308  */
309 
310  $tpl->setVariable("TXT_MAX_SIZE", ilUtil::getFileSizeInfo());
311  $tpl->setVariable("ELEMENT_ID", $this->getPostVar());
312  $tpl->setVariable("TEXT_YES", $lng->txt('yes'));
313  $tpl->setVariable("TEXT_NO", $lng->txt('no'));
314  $tpl->setVariable("DELETE_IMAGE_HEADER", $lng->txt('delete_image_header'));
315  $tpl->setVariable("DELETE_IMAGE_QUESTION", $lng->txt('delete_image_question'));
316  $tpl->setVariable("ANSWER_TEXT", $lng->txt('answer_text'));
317  $tpl->setVariable("COMMANDS_TEXT", $lng->txt('actions'));
318 
319  $a_tpl->setCurrentBlock("prop_generic");
320  $a_tpl->setVariable("PROP_GENERIC", $tpl->get());
321  $a_tpl->parseCurrentBlock();
322 
323  global $DIC;
324  $tpl = $DIC['tpl'];
325  $tpl->addJavascript("./Services/Form/js/ServiceFormWizardInput.js");
326  $tpl->addJavascript("./Modules/TestQuestionPool/templates/default/imagewizard.js");
327  }
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
global $DIC
Definition: saml.php:7
$tpl
Definition: ilias.php:10
getPostVar()
Get Post Variable.
static get($a_glyph, $a_text="")
Get glyph html.
static getFileSizeInfo()
getFieldId()
Get Post Variable.
special template class to simplify handling of ITX/PEAR
$i
Definition: disco.tpl.php:19
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 117 of file class.ilImageWizardInputGUI.php.

118  {
119  $this->allowMove = $a_allow_move;
120  }

◆ setQuestionObject()

ilImageWizardInputGUI::setQuestionObject (   $a_value)

Set question object.

Parameters
object$a_valuetest object

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

98  {
99  $this->qstObject = &$a_value;
100  }

◆ setSuffixes()

ilImageWizardInputGUI::setSuffixes (   $a_suffixes)

Set Accepted Suffixes.

Parameters
array$a_suffixesAccepted Suffixes

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

Referenced by __construct().

58  {
59  $this->suffixes = $a_suffixes;
60  }
+ 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 $index, and ilTextInputGUI\$value.

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

◆ setValues()

ilImageWizardInputGUI::setValues (   $a_values)

Set Values.

Parameters
array$a_valueValue

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

78  {
79  $this->values = $a_values;
80  }

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: