ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
class.ilAssSingleChoiceCorrectionsInputGUI.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
14 {
18  protected $qstObject;
19 
20  public function setValue($a_value)
21  {
22  if (is_array($a_value)) {
23  if (is_array($a_value['points'])) {
24  foreach ($a_value['points'] as $index => $value) {
25  $this->values[$index]->setPoints($value);
26  }
27  }
28  }
29  }
30 
31  public function checkInput()
32  {
33  global $DIC;
34  $lng = $DIC['lng'];
35 
36  include_once "./Services/AdvancedEditing/classes/class.ilObjAdvancedEditing.php";
37 
38  if (is_array($_POST[$this->getPostVar()])) {
40  }
41  $foundvalues = $_POST[$this->getPostVar()];
42  if (is_array($foundvalues)) {
43  // check points
44  $max = 0;
45  if (is_array($foundvalues['points'])) {
46  foreach ($foundvalues['points'] as $points) {
47  if ($points > $max) {
48  $max = $points;
49  }
50  if (((strlen($points)) == 0) || (!is_numeric($points))) {
51  $this->setAlert($lng->txt("form_msg_numeric_value_required"));
52  return false;
53  }
54  }
55  }
56  if ($max == 0) {
57  $this->setAlert($lng->txt("enter_enough_positive_points"));
58  return false;
59  }
60  } else {
61  $this->setAlert($lng->txt("msg_input_is_required"));
62  return false;
63  }
64 
65  return $this->checkSubItemsInput();
66  }
67 
68  public function insert($a_tpl)
69  {
70  global $DIC; /* @var ILIAS\DI\Container $DIC */
71  $lng = $DIC->language();
72 
73  $tpl = new ilTemplate("tpl.prop_singlechoicecorrection_input.html", true, true, "Modules/TestQuestionPool");
74 
75  $i = 0;
76 
77  if ($this->values === null) {
78  $this->values = $this->value;
79  }
80 
81  foreach ($this->values as $value) {
82  if ($this->qstObject->isSingleline) {
83  if (strlen($value->getImage())) {
84  $imagename = $this->qstObject->getImagePathWeb() . $value->getImage();
85  if (($this->getSingleline()) && ($this->qstObject->getThumbSize())) {
86  if (@file_exists($this->qstObject->getImagePath() . $this->qstObject->getThumbPrefix() . $value->getImage())) {
87  $imagename = $this->qstObject->getImagePathWeb() . $this->qstObject->getThumbPrefix() . $value->getImage();
88  }
89  }
90 
91  $tpl->setCurrentBlock('image');
92  $tpl->setVariable('SRC_IMAGE', $imagename);
93  $tpl->setVariable('IMAGE_NAME', $value->getImage());
94  $tpl->setVariable('ALT_IMAGE', ilUtil::prepareFormOutput($value->getAnswertext()));
95  $tpl->parseCurrentBlock();
96  } else {
97  $tpl->setCurrentBlock('image');
98  $tpl->touchBlock('image');
99  $tpl->parseCurrentBlock();
100  }
101  }
102 
103  $tpl->setCurrentBlock("answer");
104  $tpl->setVariable("ANSWER", $value->getAnswertext());
105  $tpl->parseCurrentBlock();
106 
107  $tpl->setCurrentBlock("prop_points_propval");
108  $tpl->setVariable("POINTS_POST_VAR", $this->getPostVar());
109  $tpl->setVariable("PROPERTY_VALUE", ilUtil::prepareFormOutput($value->getPoints()));
110  $tpl->parseCurrentBlock();
111 
112  $tpl->setCurrentBlock("row");
113  $tpl->parseCurrentBlock();
114  }
115 
116  if ($this->qstObject->isSingleline) {
117  $tpl->setCurrentBlock("image_heading");
118  $tpl->setVariable("ANSWER_IMAGE", $lng->txt('answer_image'));
119  $tpl->setVariable("TXT_MAX_SIZE", ilUtil::getFileSizeInfo());
120  $tpl->parseCurrentBlock();
121  }
122 
123  $tpl->setCurrentBlock("points_heading");
124  $tpl->setVariable("POINTS_TEXT", $lng->txt('points'));
125  $tpl->parseCurrentBlock();
126 
127  $tpl->setVariable("ELEMENT_ID", $this->getPostVar());
128  $tpl->setVariable("ANSWER_TEXT", $lng->txt('answer_text'));
129 
130  $a_tpl->setCurrentBlock("prop_generic");
131  $a_tpl->setVariable("PROP_GENERIC", $tpl->get());
132  $a_tpl->parseCurrentBlock();
133  }
134 }
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
static _getUsedHTMLTagsAsString($a_module="")
Returns a string of all allowed HTML tags for text editing.
global $DIC
Definition: saml.php:7
$tpl
Definition: ilias.php:10
getPostVar()
Get Post Variable.
static getFileSizeInfo()
$index
Definition: metadata.php:60
setAlert($a_alert)
Set Alert Text.
special template class to simplify handling of ITX/PEAR
static stripSlashesRecursive($a_data, $a_strip_html=true, $a_allow="")
Strip slashes from array and sub-arrays.
This class represents a single choice wizard property in a property form.
$i
Definition: disco.tpl.php:19
$_POST["username"]