5 include_once
'./Modules/Course/classes/Objectives/class.ilLOSettings.php';
6 include_once
'./Services/Table/classes/class.ilTable2GUI.php';
7 include_once
'./Modules/Course/exceptions/class.ilLOInvalidConfiguationException.php';
34 public function __construct($a_parent_obj, $a_parent_cmd, $a_container_id, $a_test_type, $a_assignment_type = self::TYPE_SINGLE_ASSIGNMENTS)
36 $this->test_type = $a_test_type;
37 $this->assignment_type = $a_assignment_type;
38 $this->container_id = $a_container_id;
40 $this->
setId(
'obj_loc_'.$a_container_id);
41 parent::__construct($a_parent_obj, $a_parent_cmd);
51 switch($this->test_type)
58 $this->
setTitle($this->lng->txt(
'crs_loc_settings_tbl_its_q_all'));
62 $this->
setTitle($this->lng->txt(
'crs_loc_settings_tbl_its_nq_all'));
69 $this->
setTitle($this->lng->txt(
'crs_loc_settings_tbl_it_q'));
73 $this->
setTitle($this->lng->txt(
'crs_loc_settings_tbl_it_nq'));
82 $this->
setTitle($this->lng->txt(
'crs_loc_settings_tbl_qts_all'));
86 $this->
setTitle($this->lng->txt(
'crs_loc_settings_tbl_qt'));
112 $this->
addColumn($this->lng->txt(
'title'),
'title');
116 $this->
addColumn($this->lng->txt(
'crs_objectives'),
'objective');
119 $this->
addColumn($this->lng->txt(
'crs_loc_tbl_tst_type'),
'ttype');
120 $this->
addColumn($this->lng->txt(
'crs_loc_tbl_tst_qst_qpl'),
'qstqpl');
123 $this->
setRowTemplate(
"tpl.crs_loc_tst_row.html",
"Modules/Course");
128 $this->
addMultiCommand(
'confirmDeleteTests', $this->lng->txt(
'crs_loc_delete_assignment'));
134 $this->
addMultiCommand(
'confirmDeleteTest', $this->lng->txt(
'crs_loc_delete_assignment'));
150 $this->tpl->setVariable(
'VAL_ID',$set[
'assignment_id']);
154 $this->tpl->setVariable(
'VAL_ID',$set[
'ref_id']);
156 $this->tpl->setVariable(
'VAL_TITLE',$set[
'title']);
157 include_once
'./Services/Link/classes/class.ilLink.php';
159 $ilCtrl->setParameterByClass(
'ilobjtestgui',
'ref_id',$set[
'ref_id']);
160 $ilCtrl->setParameterByClass(
'ilobjtestgui',
'cmd',
'questionsTabGateway');
161 $this->tpl->setVariable(
163 $ilCtrl->getLinkTargetByClass(
'ilobjtestgui')
168 $this->tpl->setCurrentBlock(
'objectives');
169 $this->tpl->setVariable(
'VAL_OBJECTIVE',(
string) $set[
'objective']);
170 $this->tpl->parseCurrentBlock();
175 #$this->tpl->setVariable('TITLE_LINK',ilLink::_getLink($set['ref_id'])); 176 if(strlen($set[
'description']))
178 $this->tpl->setVariable(
'VAL_DESC',$set[
'description']);
181 switch($set[
'ttype'])
184 $type = $this->lng->txt(
'tst_question_set_type_fixed');
188 $type = $this->lng->txt(
'tst_question_set_type_random');
192 $this->tpl->setVariable(
'VAL_TTYPE',$type);
193 $this->tpl->setVariable(
'VAL_QST_QPL',$set[
'qst_info']);
195 if(count($set[
'qpls']))
197 foreach($set[
'qpls'] as
$title)
199 $this->tpl->setCurrentBlock(
'qpl');
200 $this->tpl->setVariable(
'MAT_TITLE',$title);
201 $this->tpl->parseCurrentBlock();
203 $this->tpl->touchBlock(
'ul_begin');
204 $this->tpl->touchBlock(
'ul_end');
210 include_once
'./Modules/Course/classes/Objectives/class.ilLOTestAssignments.php';
213 $available = $assignments->getAssignmentsByType($this->test_type);
215 foreach($available as $assignment)
219 $tmp = $this->doParse($assignment->getTestRefId(),$assignment->getObjectiveId());
223 $assignment->delete();
229 $tmp[
'assignment_id'] = $assignment->getAssignmentId();
242 public function parse($a_tst_ref_id)
252 protected function doParse($a_tst_ref_id, $a_objective_id = 0)
254 include_once
'./Modules/Test/classes/class.ilObjTest.php';
261 $tst_data[
'ref_id'] = $tst->getRefId();
262 $tst_data[
'title'] = $tst->getTitle();
263 $tst_data[
'description'] = $tst->getLongDescription();
264 $tst_data[
'ttype'] = $tst->getQuestionSetType();
269 include_once
'./Modules/Course/classes/class.ilCourseObjective.php';
273 switch($tst->getQuestionSetType())
276 $tst_data[
'qst_info'] = $this->lng->txt(
'crs_loc_tst_num_qst');
277 $tst_data[
'qst_info'] .= (
' ' . count($tst->getAllQuestions()));
282 include_once
'./Modules/Test/classes/class.ilTestRandomQuestionSetSourcePoolDefinitionFactory.php';
283 include_once
'./Modules/Test/classes/class.ilTestRandomQuestionSetSourcePoolDefinitionList.php';
294 $list->loadDefinitions();
297 include_once
'./Modules/Test/classes/class.ilTestTaxonomyFilterLabelTranslater.php';
299 $translater->loadLabels($list);
301 $tst_data[
'qst_info'] = $this->lng->txt(
'crs_loc_tst_qpls');
303 foreach ($list as $definition)
306 $title = $definition->getPoolTitle();
307 $tax_id = $definition->getMappedFilterTaxId();
310 $title .= (
' -> '. $translater->getTaxonomyTreeLabel($tax_id));
312 $tax_node = $definition->getMappedFilterTaxNodeId();
315 $title .= (
' -> ' .$translater->getTaxonomyNodeLabel($tax_node));
317 $tst_data[
'qpls'][] =
$title;
322 $tst_data[
'qst_info'] .= (
' '. (int) 0);
static getInstanceByObjId($a_obj_id)
get singleton instance
static getInstance($a_container_id)
Get instance by container id.
static lookupObjectiveTitle($a_objective_id, $a_add_description=false)
setDefaultOrderField($a_defaultorderfield)
Set Default order field.
const QUESTION_SET_TYPE_RANDOM
type setting value for random question set
const TYPE_MULTIPLE_ASSIGNMENTS
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
getParentObject()
Get parent object.
getSettings()
Get settings.
setDefaultOrderDirection($a_defaultorderdirection)
Set Default order direction.
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
__construct($a_parent_obj, $a_parent_cmd, $a_container_id, $a_test_type, $a_assignment_type=self::TYPE_SINGLE_ASSIGNMENTS)
Constructor.
parseMultipleAssignments()
setTopCommands($a_val)
Set top commands (display command buttons on top of table, too)
Class ilLOTestAssignmentTableGUI.
addMultiCommand($a_cmd, $a_text)
Add Command button.
Class ilLOInvalidConfigurationException.
getFormAction()
Get Form action parameter.
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.
const TYPE_SINGLE_ASSIGNMENTS
const QUESTION_SET_TYPE_FIXED
type setting value for fixed question set
static getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id
const TYPE_TEST_QUALIFIED
parse($a_tst_ref_id)
Parse single test assignment.
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.