ILIAS  release_4-4 Revision
All Data Structures Namespaces Files Functions Variables Modules Pages
ilEssayKeywordWizardInputGUI Class Reference
+ Inheritance diagram for ilEssayKeywordWizardInputGUI:
+ Collaboration diagram for ilEssayKeywordWizardInputGUI:

Public Member Functions

 setValue ($a_value)
 Set Value. More...
 
 checkInput ()
 Check input, strip slashes etc. More...
 
 insert (&$a_tpl)
 Insert property html. More...
 
- Public Member Functions inherited from ilSingleChoiceWizardInputGUI
 __construct ($a_title="", $a_postvar="")
 Constructor. More...
 
 setDisableUpload ($disable_upload)
 
 setDisableActions ($disable_actions)
 
 setDisableText ($disable_text)
 
 setValue ($a_value)
 Set Value. More...
 
 setSuffixes ($a_suffixes)
 Set Accepted Suffixes. More...
 
 setHideImages ($a_hide)
 Set hide images. More...
 
 getSuffixes ()
 Get Accepted Suffixes. More...
 
 setShowPoints ($a_value)
 
 getShowPoints ()
 
 setValues ($a_values)
 Set Values. More...
 
 getValues ()
 Get Values. More...
 
 setSingleline ($a_value)
 Set singleline. More...
 
 getSingleline ()
 Get singleline. 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...
 
 setMultiValues (array $a_values)
 
 render ($a_mode="")
 Render item. More...
 
 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...
 

Additional Inherited Members

- Protected Member Functions inherited from ilFormPropertyGUI
 setType ($a_type)
 Set Type. More...
 
 getMultiIconsHTML ()
 Get HTML for multiple value icons. More...
 
- Protected Attributes inherited from ilSingleChoiceWizardInputGUI
 $values = array()
 
 $allowMove = false
 
 $singleline = true
 
 $qstObject = null
 
 $suffixes = array()
 
 $showPoints = true
 
 $hideImages = false
 
 $disable_text = false
 
 $disable_upload = false
 
 $disable_actions = false
 
- Protected Attributes inherited from ilTextInputGUI
 $value
 
 $maxlength = 200
 
 $size = 40
 
 $validationRegexp
 
 $validationFailureMessage = ''
 
 $suffix
 
 $style_css
 
 $css_class
 
 $ajax_datasource
 
 $ajax_datasource_delimiter
 
 $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
 

Detailed Description

Definition at line 6 of file class.ilEssayKeywordWizardInputGUI.php.

Member Function Documentation

◆ checkInput()

ilEssayKeywordWizardInputGUI::checkInput ( )

Check input, strip slashes etc.

set alert, if input is not ok.

Returns
boolean Input ok, true/false

Definition at line 35 of file class.ilEssayKeywordWizardInputGUI.php.

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

36  {
37  global $lng;
38 
39  include_once "./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
40  if (is_array( $_POST[$this->getPostVar()] ))
41  {
42  $_POST[$this->getPostVar()] = ilUtil::stripSlashesRecursive( $_POST[$this->getPostVar()], false,
44  )
45  );
46  }
47  $foundvalues = $_POST[$this->getPostVar()];
48  if (is_array( $foundvalues ))
49  {
50  // check answers
51  if (is_array( $foundvalues['answer'] ))
52  {
53  foreach ($foundvalues['answer'] as $aidx => $answervalue)
54  {
55  if (((strlen( $answervalue )) == 0) && (strlen( $foundvalues['imagename'][$aidx] ) == 0))
56  {
57  $this->setAlert( $lng->txt( "msg_input_is_required" ) );
58  return FALSE;
59  }
60  }
61  }
62  // check points
63  $max = 0;
64  if (is_array( $foundvalues['points'] ))
65  {
66  foreach ($foundvalues['points'] as $points)
67  {
68  if ($points > $max)
69  {
70  $max = $points;
71  }
72  if (((strlen( $points )) == 0) || (!is_numeric( $points )))
73  {
74  $this->setAlert( $lng->txt( "form_msg_numeric_value_required" ) );
75  return FALSE;
76  }
77  }
78  }
79  if ($max == 0)
80  {
81  $this->setAlert( $lng->txt( "enter_enough_positive_points" ) );
82  return false;
83  }
84 
85  if (is_array( $_FILES ) && count( $_FILES ) && $this->getSingleline())
86  {
87  if (!$this->hideImages)
88  {
89  if (is_array( $_FILES[$this->getPostVar()]['error']['image'] ))
90  {
91  foreach ($_FILES[$this->getPostVar()]['error']['image'] as $index => $error)
92  {
93  // error handling
94  if ($error > 0)
95  {
96  switch ($error)
97  {
98  case UPLOAD_ERR_INI_SIZE:
99  $this->setAlert( $lng->txt( "form_msg_file_size_exceeds" ) );
100  return false;
101  break;
102 
103  case UPLOAD_ERR_FORM_SIZE:
104  $this->setAlert( $lng->txt( "form_msg_file_size_exceeds" ) );
105  return false;
106  break;
107 
108  case UPLOAD_ERR_PARTIAL:
109  $this->setAlert( $lng->txt( "form_msg_file_partially_uploaded" ) );
110  return false;
111  break;
112 
113  case UPLOAD_ERR_NO_FILE:
114  if ($this->getRequired())
115  {
116  if ((!strlen( $foundvalues['imagename'][$index]
117  )) && (!strlen( $foundvalues['answer'][$index] ))
118  )
119  {
120  $this->setAlert( $lng->txt( "form_msg_file_no_upload" ) );
121  return false;
122  }
123  }
124  break;
125 
126  case UPLOAD_ERR_NO_TMP_DIR:
127  $this->setAlert( $lng->txt( "form_msg_file_missing_tmp_dir" ) );
128  return false;
129  break;
130 
131  case UPLOAD_ERR_CANT_WRITE:
132  $this->setAlert( $lng->txt( "form_msg_file_cannot_write_to_disk" ) );
133  return false;
134  break;
135 
136  case UPLOAD_ERR_EXTENSION:
137  $this->setAlert( $lng->txt( "form_msg_file_upload_stopped_ext" ) );
138  return false;
139  break;
140  }
141  }
142  }
143  }
144  else
145  {
146  if ($this->getRequired())
147  {
148  $this->setAlert( $lng->txt( "form_msg_file_no_upload" ) );
149  return false;
150  }
151  }
152 
153  if (is_array( $_FILES[$this->getPostVar()]['tmp_name']['image'] ))
154  {
155  foreach ($_FILES[$this->getPostVar()]['tmp_name']['image'] as $index => $tmpname)
156  {
157  $filename = $_FILES[$this->getPostVar()]['name']['image'][$index];
158  $filename_arr = pathinfo( $filename );
159  $suffix = $filename_arr["extension"];
160  $mimetype = $_FILES[$this->getPostVar()]['type']['image'][$index];
161  $size_bytes = $_FILES[$this->getPostVar()]['size']['image'][$index];
162  // check suffixes
163  if (strlen( $tmpname ) && is_array( $this->getSuffixes() ))
164  {
165  if (!in_array( strtolower( $suffix ), $this->getSuffixes() ))
166  {
167  $this->setAlert( $lng->txt( "form_msg_file_wrong_file_type" ) );
168  return false;
169  }
170  }
171  }
172  }
173 
174  if (is_array( $_FILES[$this->getPostVar()]['tmp_name']['image'] ))
175  {
176  foreach ($_FILES[$this->getPostVar()]['tmp_name']['image'] as $index => $tmpname)
177  {
178  $filename = $_FILES[$this->getPostVar()]['name']['image'][$index];
179  $filename_arr = pathinfo( $filename );
180  $suffix = $filename_arr["extension"];
181  $mimetype = $_FILES[$this->getPostVar()]['type']['image'][$index];
182  $size_bytes = $_FILES[$this->getPostVar()]['size']['image'][$index];
183  // virus handling
184  if (strlen( $tmpname ))
185  {
186  $vir = ilUtil::virusHandling( $tmpname, $filename );
187  if ($vir[0] == false)
188  {
189  $this->setAlert( $lng->txt( "form_msg_file_virus_found" ) . "<br />" . $vir[1] );
190  return false;
191  }
192  }
193  }
194  }
195  }
196  }
197  }
198  else
199  {
200  $this->setAlert( $lng->txt( "msg_input_is_required" ) );
201  return FALSE;
202  }
203 
204  return $this->checkSubItemsInput();
205  }
$_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
& _getUsedHTMLTagsAsString($a_module="")
Returns a string of all allowed HTML tags for text editing.
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
+ Here is the call graph for this function:

◆ insert()

ilEssayKeywordWizardInputGUI::insert ( $a_tpl)

Insert property html.

Returns
int Size

Definition at line 212 of file class.ilEssayKeywordWizardInputGUI.php.

References $lng, $tpl, ilTextInputGUI\$value, ilFormPropertyGUI\getDisabled(), ilFormPropertyGUI\getFieldId(), ilUtil\getImagePath(), ilTextInputGUI\getMaxLength(), ilFormPropertyGUI\getPostVar(), ilSingleChoiceWizardInputGUI\getSingleline(), ilTextInputGUI\getSize(), ilYuiUtil\initDomEvent(), and ilUtil\prepareFormOutput().

213  {
214  global $lng;
215 
216  $tpl = new ilTemplate("tpl.prop_essaykeywordswizardinput.html", true, true, "Modules/TestQuestionPool");
217  $i = 0;
218  foreach ($this->values as $value)
219  {
220  if ($this->getSingleline())
221  {
222  if (is_object( $value ))
223  {
224  $tpl->setCurrentBlock( "prop_text_propval" );
225  $tpl->setVariable( "PROPERTY_VALUE", ilUtil::prepareFormOutput( $value->getAnswertext() ) );
226  $tpl->parseCurrentBlock();
227  $tpl->setCurrentBlock( "prop_points_propval" );
228  $tpl->setVariable( "PROPERTY_VALUE", ilUtil::prepareFormOutput( $value->getPointsChecked() ) );
229  $tpl->parseCurrentBlock();
230  }
231  $tpl->setCurrentBlock( 'singleline' );
232  $tpl->setVariable( "SIZE", $this->getSize() );
233  $tpl->setVariable( "SINGLELINE_ID", $this->getPostVar() . "[answer][$i]" );
234  $tpl->setVariable( "SINGLELINE_ROW_NUMBER", $i );
235  $tpl->setVariable( "SINGLELINE_POST_VAR", $this->getPostVar() );
236  $tpl->setVariable( "MAXLENGTH", $this->getMaxLength() );
237  if ($this->getDisabled())
238  {
239  $tpl->setVariable( "DISABLED_SINGLELINE", " disabled=\"disabled\"" );
240  }
241  $tpl->parseCurrentBlock();
242  }
243  else {
244  if (!$this->getSingleline())
245  {
246  if (is_object( $value ))
247  {
248  $tpl->setCurrentBlock( "prop_points_propval" );
249  $tpl->setVariable( "PROPERTY_VALUE", ilUtil::prepareFormOutput( $value->getPoints() ) );
250  $tpl->parseCurrentBlock();
251  }
252  }
253  }
254 
255  $tpl->setCurrentBlock( "row" );
256  $class = ($i % 2 == 0) ? "even" : "odd";
257  if ($i == 0)
258  {
259  $class .= " first";
260  }
261  if ($i == count( $this->values ) - 1)
262  {
263  $class .= " last";
264  }
265  $tpl->setVariable( "ROW_CLASS", $class );
266  $tpl->setVariable( "POST_VAR", $this->getPostVar() );
267  $tpl->setVariable( "ROW_NUMBER", $i );
268  $tpl->setVariable( "ID", $this->getPostVar() . "[answer][$i]" );
269  $tpl->setVariable( "POINTS_ID", $this->getPostVar() . "[points][$i]" );
270  $tpl->setVariable( "CMD_ADD", "cmd[add" . $this->getFieldId() . "][$i]" );
271  $tpl->setVariable( "CMD_REMOVE", "cmd[remove" . $this->getFieldId() . "][$i]" );
272  if ($this->getDisabled())
273  {
274  $tpl->setVariable( "DISABLED_POINTS", " disabled=\"disabled\"" );
275  }
276  $tpl->setVariable( "ADD_BUTTON", ilUtil::getImagePath( 'edit_add.png' ) );
277  $tpl->setVariable( "REMOVE_BUTTON", ilUtil::getImagePath( 'edit_remove.png' ) );
278  $tpl->parseCurrentBlock();
279  $i++;
280  }
281 
282  $tpl->setVariable( "ELEMENT_ID", $this->getPostVar() );
283  $tpl->setVariable( "TEXT_YES", $lng->txt( 'yes' ) );
284  $tpl->setVariable( "TEXT_NO", $lng->txt( 'no' ) );
285  $tpl->setVariable( "DELETE_IMAGE_HEADER", $lng->txt( 'delete_image_header' ) );
286  $tpl->setVariable( "DELETE_IMAGE_QUESTION", $lng->txt( 'delete_image_question' ) );
287  $tpl->setVariable( "ANSWER_TEXT", $lng->txt( 'answer_text' ) );
288  $tpl->setVariable( "POINTS_TEXT", $lng->txt( 'points' ) );
289  $tpl->setVariable( "COMMANDS_TEXT", $lng->txt( 'actions' ) );
290  $tpl->setVariable( "POINTS_CHECKED_TEXT", $lng->txt( 'checkbox_checked' ) );
291 
292  $a_tpl->setCurrentBlock( "prop_generic" );
293  $a_tpl->setVariable( "PROP_GENERIC", $tpl->get() );
294  $a_tpl->parseCurrentBlock();
295 
296  global $tpl;
297  include_once "./Services/YUI/classes/class.ilYuiUtil.php";
299  $tpl->addJavascript( "./Modules/TestQuestionPool/templates/default/multiplechoicewizard.js" );
300  }
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
getMaxLength()
Get Max Length.
getPostVar()
Get Post Variable.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
getFieldId()
Get Post Variable.
special template class to simplify handling of ITX/PEAR
static initDomEvent()
Init YUI DomEvent.
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
global $lng
Definition: privfeed.php:40
+ Here is the call graph for this function:

◆ setValue()

ilEssayKeywordWizardInputGUI::setValue (   $a_value)

Set Value.

Parameters
string$a_valueValue

Definition at line 13 of file class.ilEssayKeywordWizardInputGUI.php.

References ilTextInputGUI\$value.

14  {
15  $this->values = array();
16  if (is_array( $a_value ))
17  {
18  if (is_array( $a_value['answer'] ))
19  {
20  foreach ($a_value['answer'] as $index => $value)
21  {
22  include_once "./Modules/TestQuestionPool/classes/class.assAnswerMultipleResponseImage.php";
23  $answer = new ASS_AnswerMultipleResponseImage($value, $a_value['points'][$index], $index, $a_value['points_unchecked'][$index], $a_value['imagename'][$index]);
24  array_push( $this->values, $answer );
25  }
26  }
27  }
28  }
ASS_AnswerBinaryStateImage is a class for answers with a binary state indicator (checked/unchecked, set/unset) and an image file.

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