ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
class.ilQuestionCumulatedStatisticsTableGUI.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2014 ILIAS open source, Extended GPL, see docs/LICENSE */
3
4require_once 'Services/Table/classes/class.ilTable2GUI.php';
5require_once 'Services/Tree/classes/class.ilPathGUI.php';
6require_once 'Services/Link/classes/class.ilLink.php';
7
13{
17 protected $question;
18
25 public function __construct($controller, $cmd, $template_context, assQuestion $question)
26 {
27 $this->question = $question;
28 $this->setId('qst_usage_' . $question->getId());
29 parent::__construct($controller, $cmd);
30
31 $this->setRowTemplate('tpl.il_as_qpl_question_cumulated_stats_table_row.html', 'Modules/TestQuestionPool');
32 $this->setLimit(PHP_INT_MAX);
33
34 $this->setDefaultOrderField('result');
35 $this->setDefaultOrderDirection('ASC');
36
37 $this->setTitle($this->lng->txt('question_cumulated_statistics'));
38 $this->setNoEntriesText($this->lng->txt('qpl_assessment_no_assessment_of_questions'));
39
40 $this->disable('sort');
41 $this->disable('hits');
42 $this->disable('numinfo');
43
44 $this->initColumns();
45 $this->initData();
46 }
47
51 protected function initColumns()
52 {
53 $this->addColumn($this->lng->txt('result'), 'result');
54 $this->addColumn($this->lng->txt('value'), 'value');
55 }
56
60 protected function initData()
61 {
62 $rows = array();
63
64 $total_of_answers = $this->question->getTotalAnswers();
65
66 if($total_of_answers)
67 {
68 $rows[] = array(
69 'result' => $this->lng->txt('qpl_assessment_total_of_answers'),
70 'value' => $total_of_answers,
71 'is_percent' => false
72 );
73
74 $rows[] = array(
75 'result' => $this->lng->txt('qpl_assessment_total_of_right_answers'),
76 'value' => assQuestion::_getTotalRightAnswers($this->question->getId()) * 100.0,
77 'is_percent' => true
78 );
79 }
80 else
81 {
82 $this->disable('header');
83 }
84
85 $this->setData($rows);
86 }
87
92 public function numericOrdering($a_field)
93 {
94 if('value' == $a_field)
95 {
96 return true;
97 }
98
99 return false;
100 }
101
105 public function fillRow($row)
106 {
107 $this->tpl->setVariable('VAL_RESULT', $row['result']);
108 $this->tpl->setVariable('VAL_VALUE', $row['is_percent'] ? sprintf("%2.2f", $row['value'])
109 . ' %' : $row['value']);
110 }
111}
sprintf('%.4f', $callTime)
An exception for terminatinating execution or to throw for unit testing.
Abstract basic class which is to be extended by the concrete assessment question type classes.
getId()
Gets the id of the assQuestion object.
static _getTotalRightAnswers($a_q_id)
get number of answers for question id (static) note: do not use $this inside this method
__construct($controller, $cmd, $template_context, assQuestion $question)
Class ilTable2GUI.
addColumn($a_text, $a_sort_field="", $a_width="", $a_is_checkbox_action_column=false, $a_class="", $a_tooltip="", $a_tooltip_with_html=false)
Add a column to the header.
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
setNoEntriesText($a_text)
Set text for an empty table.
setData($a_data)
set table data @access public
setRowTemplate($a_template, $a_template_dir="")
Set row template.
setLimit($a_limit=0, $a_default_limit=0)
set max.
setDefaultOrderField($a_defaultorderfield)
Set Default order field.
setId($a_val)
Set id.
setDefaultOrderDirection($a_defaultorderdirection)
Set Default order direction.
disable($a_module_name)
diesables particular modules of table
$cmd
Definition: sahs_server.php:35