4 require_once
'Services/Form/classes/class.ilNumberInputGUI.php';
5 require_once
'Services/Table/classes/class.ilTable2GUI.php';
39 $this->
setId(
'man_scor_by_qst_' . $parentObj->object->getId());
41 parent::__construct($parentObj, self::PARENT_DEFAULT_CMD);
45 $this->
setFormAction($ilCtrl->getFormAction($parentObj, self::PARENT_DEFAULT_CMD));
47 $this->
setRowTemplate(
"tpl.il_as_tst_man_scoring_by_question_tblrow.html",
"Modules/Test");
51 $this->
addCommandButton(self::PARENT_SAVE_SCORING_CMD, $this->lng->txt(
'save'));
59 $this->
addColumn($this->lng->txt(
'name'),
'lastname',
'40%');
60 $this->
addColumn($this->lng->txt(
'tst_reached_points'),
'lastname',
'40%');
68 include_once
'Services/Form/classes/class.ilSelectInputGUI.php';
69 $available_questions =
new ilSelectInputGUI($this->lng->txt(
'question'),
'question');
70 $select_questions =
array();
74 $questions = $this->
getParentObject()->object->getPotentialRandomTestQuestions();
77 foreach ($questions as
$data) {
78 include_once
'Modules/TestQuestionPool/classes/class.assQuestion.php';
81 if (in_array(
$type, $scoring)) {
83 if ($maxpoints == 1) {
84 $maxpoints =
' (' . $maxpoints .
' ' . $this->lng->txt(
'point') .
')';
86 $maxpoints =
' (' . $maxpoints .
' ' . $this->lng->txt(
'points') .
')';
89 $select_questions[$data[
"question_id"]] = $data[
'title'] . $maxpoints .
' [' . $this->lng->txt(
'question_id_short') .
': ' . $data[
"question_id"] .
']';
92 if (!$select_questions) {
93 $select_questions[0] = $this->lng->txt(
'tst_no_scorable_qst_available');
95 $available_questions->
setOptions(
array(
'' => $this->lng->txt(
'please_choose')) + $select_questions);
97 $available_questions->readFromSession();
98 $this->filter[
'question'] = $available_questions->getValue();
103 for (
$i = 1;
$i <= $max_pass;
$i++) {
106 $pass->setOptions($passes);
108 $pass->readFromSession();
109 $this->filter[
'pass'] =
$pass->getValue();
124 if (!$this->first_row_rendered) {
125 $this->first_row_rendered =
true;
126 $this->tpl->touchBlock(
'row_js');
129 $this->tpl->setVariable(
'VAL_NAME',
$row[
'participant']->getName());
131 $reached_points->allowDecimals(
true);
132 $reached_points->setSize(5);
133 if (count($this->manPointsPostData)) {
135 $reached_points->setAlert(sprintf(
136 $this->lng->txt(
'tst_manscoring_maxpoints_exceeded_input_alert'),
137 $row[
'maximum_points']
140 $this->tpl->setCurrentBlock(
"reached_points_alert");
142 $this->tpl->setVariable(
"REACHED_POINTS_ALT_ALERT", $this->lng->txt(
"alert"));
143 $this->tpl->setVariable(
"REACHED_POINTS_TXT_ALERT", $reached_points->getAlert());
144 $this->tpl->parseCurrentBlock();
147 $reached_points->setValue($this->manPointsPostData[$row[
'pass_id']][$row[
'active_id']][$row[
'qst_id']]);
149 $reached_points->setValue($row[
'reached_points']);
151 $this->tpl->setVariable(
'VAL_REACHED_POINTS', $reached_points->render());
153 $ilCtrl->setParameter($this->
getParentObject(),
'qst_id', $row[
'qst_id']);
154 $ilCtrl->setParameter($this->
getParentObject(),
'active_id', $row[
'active_id']);
155 $ilCtrl->setParameter($this->
getParentObject(),
'pass_id', $row[
'pass_id']);
156 $this->tpl->setVariable(
'VAL_LINK_ANSWER', $ilCtrl->getLinkTarget($this->getParentObject(),
'getAnswerDetail',
'',
true,
false));
160 $this->tpl->setVariable(
'VAL_TXT_ANSWER', $this->lng->txt(
'tst_eval_show_answer'));
165 if (!isset($this->manPointsPostData[$pass_id])) {
169 if (!isset($this->manPointsPostData[$pass_id][$active_id])) {
173 if (!isset($this->manPointsPostData[$pass_id][$active_id][$qst_id])) {
177 $submittedPoints = $this->manPointsPostData[$pass_id][$active_id][$qst_id];
addCommandButton($a_cmd, $a_text, $a_onclick='', $a_id="", $a_class=null)
Add Command button.
__construct($a_parent_obj, $a_parent_cmd="", $a_template_context="")
ilTable2GUI constructor.
ilTestManScoringParticipantsBySelectedQuestionAndPassTableGUI
addFilterItem($a_input_item, $a_optional=false)
Add filter item.
const PARENT_RESET_FILTER_CMD
const PARENT_APPLY_FILTER_CMD
getParentObject()
Get parent object.
static _getMaximumPoints($question_id)
Returns the maximum points, a learner can reach answering the question.
static _getQuestionInfo($question_id)
Returns question information from the database.
setResetCommand($a_val, $a_caption=null)
Set reset filter command.
isMaxPointsExceededByPostValue($pass_id, $active_id, $qst_id)
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
setDisableFilterHiding($a_val=true)
Set disable filter hiding.
getCurQuestionMaxPoints()
const PARENT_SAVE_SCORING_CMD
setRowTemplate($a_template, $a_template_dir="")
Set row template.
Create styles array
The data for the language used.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
disable($a_module_name)
diesables particular modules of table
Create new PHPExcel object
obj_idprivate
setManualScoringPointsPostData($manPointsPostData)
static _getManualScoring()
Retrieve the manual scoring settings.
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.
setShowRowsSelector($a_value)
Toggle rows-per-page selector.
fillRow($a_set)
Standard Version of Fill Row.
setCurQuestionMaxPoints($curQuestionMaxPoints)
setFilterCommand($a_val, $a_caption=null)
Set filter command.