24 include_once(
'./Services/Table/classes/class.ilTable2GUI.php');
48 $this->course_obj = $a_course_obj;
51 $this->lng->loadLanguageModule(
'crs');
54 parent::__construct($a_parent_obj,
'questionOverview');
56 $this->
addColumn($this->lng->txt(
'title'),
'title',
'33%');
57 $this->
addColumn($this->lng->txt(
'crs_objective_self_assessment'),
'self',
'33%%');
58 $this->
addColumn($this->lng->txt(
'crs_objective_final_test'),
'final',
'33%');
60 $this->
setFormAction($this->ctrl->getFormAction($a_parent_obj));
61 $this->
setRowTemplate(
"tpl.crs_questions_table_row.html",
"Modules/Course");
65 $this->
enable(
'select_all');
80 static $row_counter = 1;
82 $this->tpl->setVariable(
'VAL_TITLE',$a_set[
'title']);
83 if(strlen($a_set[
'description']))
85 $this->tpl->setVariable(
'VAL_DESC',$a_set[
'description']);
88 foreach($a_set[
'self_tests'] as $tst)
90 foreach($tst[
'questions'] as $qst)
92 $this->tpl->setCurrentBlock(
'self_qst');
93 $this->tpl->setVariable(
'SELF_QST_TITLE',$qst[
'title']);
94 if(strlen($qst[
'description']))
96 $this->tpl->setVariable(
'SELF_QST_DESCRIPTION',$qst[
'description']);
98 $this->tpl->setVariable(
'SELF_QST_POINTS',$qst[
'points']);
99 $this->tpl->setVariable(
'SELF_QST_TXT_POINTS',$this->lng->txt(
'crs_objective_points'));
100 $this->tpl->parseCurrentBlock();
102 $this->tpl->setCurrentBlock(
'self_tst');
103 $this->tpl->setVariable(
'SELF_TST_TITLE',$tst[
'title']);
104 if(strlen($tst[
'description']))
106 $this->tpl->setVariable(
'SELF_TST_DESC',$tst[
'description']);
109 $this->tpl->setVariable(
'SELF_TYPE_ALT',$this->lng->txt(
'obj_tst'));
110 $this->tpl->parseCurrentBlock();
112 if(count($a_set[
'self_tests']))
114 $this->tpl->setVariable(
'SELF_TXT_ALL_POINTS',$this->lng->txt(
'crs_objective_all_points'));
115 $this->tpl->setVariable(
'SELF_TXT_POINTS',$this->lng->txt(
'crs_objective_points'));
116 $this->tpl->setVariable(
'SELF_TXT_REQ_POINTS',$this->lng->txt(
'crs_obj_required_points'));
117 $this->tpl->setVariable(
'SELF_POINTS',$a_set[
'self_max_points']);
118 $this->tpl->setVariable(
'SELF_ID',$a_set[
'id']);
119 $this->tpl->setVariable(
'SELF_LIMIT',$a_set[
'self_limit']);
122 foreach($a_set[
'final_tests'] as $tst)
124 foreach($tst[
'questions'] as $qst)
126 $this->tpl->setCurrentBlock(
'final_qst');
127 $this->tpl->setVariable(
'FINAL_QST_TITLE',$qst[
'title']);
128 if(strlen($qst[
'description']))
130 $this->tpl->setVariable(
'FINAL_QST_DESCRIPTION',$qst[
'description']);
132 $this->tpl->setVariable(
'FINAL_QST_POINTS',$qst[
'points']);
133 $this->tpl->setVariable(
'FINAL_QST_TXT_POINTS',$this->lng->txt(
'crs_objective_points'));
134 $this->tpl->parseCurrentBlock();
136 $this->tpl->setCurrentBlock(
'final_tst');
137 $this->tpl->setVariable(
'FINAL_TST_TITLE',$tst[
'title']);
138 if(strlen($tst[
'description']))
140 $this->tpl->setVariable(
'FINAL_TST_DESC',$tst[
'description']);
143 $this->tpl->setVariable(
'FINAL_TYPE_ALT',$this->lng->txt(
'obj_tst'));
144 $this->tpl->parseCurrentBlock();
146 if(count($a_set[
'final_tests']))
148 $this->tpl->setVariable(
'FINAL_TXT_ALL_POINTS',$this->lng->txt(
'crs_objective_all_points'));
149 $this->tpl->setVariable(
'FINAL_TXT_POINTS',$this->lng->txt(
'crs_objective_points'));
150 $this->tpl->setVariable(
'FINAL_TXT_REQ_POINTS',$this->lng->txt(
'crs_obj_required_points'));
151 $this->tpl->setVariable(
'FINAL_POINTS',$a_set[
'final_max_points']);
152 $this->tpl->setVariable(
'FINAL_ID',$a_set[
'id']);
153 $this->tpl->setVariable(
'FINAL_LIMIT',$a_set[
'final_limit']);
156 $this->tpl->setVariable(
'TST_CSS',
ilUtil::switchColor($row_counter++,
'tblrow1',
'tblrow2'));
166 public function parse($a_objective_ids)
168 include_once
'./Modules/Course/classes/class.ilCourseObjectiveQuestion.php';
170 $objectives =
array();
171 foreach($a_objective_ids as $objective_id)
179 foreach($question_obj->getSelfAssessmentTests() as $tmp_test)
181 if(isset(
$_POST[
'self'][$objective_id]))
183 $objective_data[
'self_limit'] =
$_POST[
'self'][$objective_id];
187 $objective_data[
'self_limit'] = $tmp_test[
'limit'];
189 $questions =
array();
190 foreach($question_obj->getQuestionsOfTest($tmp_test[
'obj_id']) as $tmp_question)
192 $qst[
'title'] = $tmp_question[
'title'];
193 $qst[
'description'] = $tmp_question[
'description'];
194 $qst[
'points'] = $tmp_question[
'points'];
198 $tst[
'questions'] = $questions;
204 $objective_data[
'self_tests'] = $tests;
205 $objective_data[
'self_max_points'] = $question_obj->getSelfAssessmentPoints();
209 foreach($question_obj->getFinalTests() as $tmp_test)
211 if(isset(
$_POST[
'final'][$objective_id]))
213 $objective_data[
'final_limit'] =
$_POST[
'final'][$objective_id];
217 $objective_data[
'final_limit'] = $tmp_test[
'limit'];
220 $questions =
array();
221 foreach($question_obj->getQuestionsOfTest($tmp_test[
'obj_id']) as $tmp_question)
223 $qst[
'title'] = $tmp_question[
'title'];
224 $qst[
'description'] = $tmp_question[
'description'];
225 $qst[
'points'] = $tmp_question[
'points'];
229 $tst[
'questions'] = $questions;
236 $objective_data[
'final_tests'] = $tests;
237 $objective_data[
'final_max_points'] = $question_obj->getFinalTestPoints();
239 $objective_data[
'id'] = $objective_id;
240 $objective_data[
'title'] = $objective->getTitle();
242 $objective_data[
'description'] = $objective->getDescription();
244 $objectives[] = $objective_data;
addCommandButton($a_cmd, $a_text, $a_onclick='', $a_id="", $a_class=null)
Add Command button.
parse($a_objective_ids)
parse
static _lookupTitle($a_id)
lookup object title
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static _lookupDescription($a_id)
lookup object description
enable($a_module_name)
enables particular modules of table
__construct($a_parent_obj, $a_course_obj)
Constructor.
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
setFormName($a_formname="")
Set Form name.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows) ...
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.
class ilcourseobjectiveQuestion
setLimit($a_limit=0, $a_default_limit=0)