Creates the question output form for the learner.
218 $orientation = $this->
object->orientation;
219 $template_file =
"tpl.il_svy_out_sc.html";
220 if ($compress_view && $orientation == 1) {
221 $template_file =
"tpl.il_svy_out_sc_comp.html";
224 $template =
new ilTemplate($template_file,
true,
true,
"Modules/SurveyQuestionPool");
226 $template->setCurrentBlock(
"material");
228 $template->parseCurrentBlock();
230 switch ($orientation) {
233 for (
$i = 0;
$i < $this->
object->categories->getCategoryCount();
$i++) {
234 $cat = $this->
object->categories->getCategory(
$i);
236 $debug_scale = ($cat->scale) ? ($cat->scale - 1) :
$i;
237 $this->log->debug(
"Vertical orientation - Original scale = " . $cat->scale .
" If(scale) scale -1 else i. The new scale value is = " . $debug_scale);
240 $template->setCurrentBlock(
"other_row");
241 if (strlen($cat->title)) {
242 $template->setVariable(
"OTHER_LABEL", $cat->title);
244 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
245 $template->setVariable(
"QUESTION_ID", $this->object->getId());
246 if (is_array($working_data)) {
247 foreach ($working_data as $value) {
248 if (strlen($value[
"value"])) {
249 if ($value[
"value"] == $cat->scale - 1) {
250 if (strlen($value[
'textanswer'])) {
253 if (!$value[
'uncheck']) {
254 $template->setVariable(
"CHECKED_SC",
" checked=\"checked\"");
260 $template->parseCurrentBlock();
262 $template->setCurrentBlock(
"row");
264 $template->setVariable(
'ROWCLASS',
' class="neutral"');
267 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
268 $template->setVariable(
"QUESTION_ID", $this->object->getId());
269 if (is_array($working_data)) {
270 foreach ($working_data as $value) {
271 if (strcmp($value[
"value"],
"") != 0) {
272 if ($value[
"value"] == $cat->scale - 1) {
273 if (!$value[
'uncheck']) {
274 $template->setVariable(
"CHECKED_SC",
" checked=\"checked\"");
280 $template->parseCurrentBlock();
282 $template->touchBlock(
'outer_row');
287 for (
$i = 0;
$i < $this->
object->categories->getCategoryCount();
$i++) {
288 $cat = $this->
object->categories->getCategory(
$i);
290 $debug_scale = ($cat->scale) ? ($cat->scale - 1) :
$i;
291 $this->log->debug(
"Horizontal orientation - Original NEUTRAL scale = " . $cat->scale .
" If(scale) scale -1 else i. The new scale value is = " . $debug_scale);
293 $template->setCurrentBlock(
"radio_col");
295 $template->setVariable(
'COLCLASS',
' neutral');
297 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
298 $template->setVariable(
"QUESTION_ID", $this->object->getId());
299 if (is_array($working_data)) {
300 foreach ($working_data as $value) {
301 if (strcmp($value[
"value"],
"") != 0) {
302 if ($value[
"value"] == $cat->scale - 1) {
303 if (!$value[
'uncheck']) {
304 $template->setVariable(
"CHECKED_SC",
" checked=\"checked\"");
310 $template->parseCurrentBlock();
312 for (
$i = 0;
$i < $this->
object->categories->getCategoryCount();
$i++) {
313 $cat = $this->
object->categories->getCategory(
$i);
315 $debug_scale = ($cat->scale) ? ($cat->scale - 1) :
$i;
316 $this->log->debug(
"Horizontal orientation - Original scale = " . $cat->scale .
" If(scale) scale -1 else i. The new scale value is = " . $debug_scale);
319 $template->setCurrentBlock(
"text_other_col");
320 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
321 $template->setVariable(
"QUESTION_ID", $this->object->getId());
322 if (strlen($cat->title)) {
323 $template->setVariable(
"OTHER_LABEL", $cat->title);
325 if (is_array($working_data)) {
326 foreach ($working_data as $value) {
327 if (strlen($value[
"value"])) {
328 if ($value[
"value"] == $cat->scale - 1 && strlen($value[
'textanswer'])) {
334 $template->parseCurrentBlock();
336 $template->setCurrentBlock(
"text_col");
338 $template->setVariable(
'COLCLASS',
' neutral');
340 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
342 $template->setVariable(
"QUESTION_ID", $this->object->getId());
343 $template->parseCurrentBlock();
345 $template->touchBlock(
'text_outer_col');
350 for (
$i = 0;
$i < $this->
object->categories->getCategoryCount();
$i++) {
351 $cat = $this->
object->categories->getCategory(
$i);
353 $debug_scale = ($cat->scale) ? ($cat->scale - 1) :
$i;
354 $this->log->debug(
"Combobox - Original scale = " . $cat->scale .
" If(scale) scale -1 else i. The new scale value is = " . $debug_scale);
356 $template->setCurrentBlock(
"comborow");
357 $template->setVariable(
"TEXT_SC", $cat->title);
358 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
359 if (is_array($working_data)) {
360 if (strcmp($working_data[0][
"value"],
"") != 0) {
361 if ($working_data[0][
"value"] == $cat->scale - 1) {
362 $template->setVariable(
"SELECTED_SC",
" selected=\"selected\"");
366 $template->parseCurrentBlock();
368 $template->setCurrentBlock(
"combooutput");
369 $template->setVariable(
"QUESTION_ID", $this->object->getId());
370 $template->setVariable(
"SELECT_OPTION", $this->lng->txt(
"select_option"));
371 $template->setVariable(
"TEXT_SELECTION", $this->lng->txt(
"selection"));
372 $template->parseCurrentBlock();
376 for (
$i = 0;
$i < $this->
object->categories->getCategoryCount();
$i++) {
377 $cat = $this->
object->categories->getCategory(
$i);
379 $debug_scale = ($cat->scale) ? ($cat->scale - 1) :
$i;
380 $this->log->debug(
"Horizontal orientation (compressed) - Original NEUTRAL scale = " . $cat->scale .
" If(scale) scale -1 else i. The new scale value is = " . $debug_scale);
383 $template->setCurrentBlock(
"other");
384 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
385 $template->setVariable(
"OTHER_Q_ID", $this->object->getId());
386 if (is_array($working_data)) {
387 foreach ($working_data as $value) {
388 if (strlen($value[
"value"])) {
389 if ($value[
"value"] == $cat->scale - 1 && strlen($value[
'textanswer'])) {
395 $template->parseCurrentBlock();
399 $template->setCurrentBlock(
"radio_col");
401 $template->setVariable(
'COLCLASS',
' neutral');
403 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
404 $template->setVariable(
"QUESTION_ID", $this->object->getId());
405 if (is_array($working_data)) {
406 foreach ($working_data as $value) {
407 if (strcmp($value[
"value"],
"") != 0) {
408 if ($value[
"value"] == $cat->scale - 1) {
409 if (!$value[
'uncheck']) {
410 $template->setVariable(
"CHECKED_SC",
" checked=\"checked\"");
416 $template->parseCurrentBlock();
418 $perc = round(70 / $this->object->categories->getCategoryCount(), 2);
419 for (
$i = 0;
$i < $this->
object->categories->getCategoryCount();
$i++) {
420 $cat = $this->
object->categories->getCategory(
$i);
422 $debug_scale = ($cat->scale) ? ($cat->scale - 1) :
$i;
423 $this->log->debug(
"Horizontal orientation - Original scale = " . $cat->scale .
" If(scale) scale -1 else i. The new scale value is = " . $debug_scale);
425 $template->setCurrentBlock(
"text_col");
427 $template->setVariable(
'COLCLASS',
' neutral');
429 $template->setVariable(
"VALUE_SC", ($cat->scale) ? ($cat->scale - 1) :
$i);
431 $template->setVariable(
"PERC", $perc);
432 $template->setVariable(
"QUESTION_ID", $this->object->getId());
433 $template->parseCurrentBlock();
437 if ($question_title) {
438 $template->setVariable(
"QUESTION_TITLE", $this->object->getTitle());
440 $template->setCurrentBlock(
"question_data");
441 if (strcmp($error_message,
"") != 0) {
442 $template->setVariable(
"ERROR_MESSAGE",
"<p class=\"warning\">$error_message</p>");
444 if ($show_questiontext) {
447 $template->parseCurrentBlock();
448 return $template->get();
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms public
getMaterialOutput()
Creates the HTML output of the question material(s)
outQuestionText($template)