24 include_once(
'./Services/Table/classes/class.ilTable2GUI.php');
49 public function __construct($a_parent_obj, $a_course_obj, $a_objective_id)
56 $this->objective_id = $a_objective_id;
57 $this->course_obj = $a_course_obj;
60 $this->lng->loadLanguageModule(
'crs');
63 parent::__construct($a_parent_obj,
'materialAssignment');
66 $this->
addColumn($this->lng->txt(
'type'),
'type',
"1px");
67 $this->
addColumn($this->lng->txt(
'title'),
'title',
'99%');
69 $this->
setFormAction($this->ctrl->getFormAction($a_parent_obj));
70 $this->
setRowTemplate(
"tpl.crs_objective_list_materials_row.html",
"Modules/Course");
71 #$this->disable('sort'); 72 #$this->disable('header'); 73 #$this->disable('numinfo'); 74 #$this->disable('select_all'); 82 $this->
addCommandButton(
'updateMaterialAssignment', $this->lng->txt(
'crs_wiz_next'));
83 #$this->addMultiCommand('updateMaterialAssignment', $this->lng->txt('crs_wiz_next')); 98 foreach ($a_set[
'sub'] as $sub_data) {
100 for (
$i = $sub_data[
'depth'];
$i > 1;
$i--) {
101 $this->tpl->touchBlock(
'begin_depth');
102 $this->tpl->touchBlock(
'end_depth');
105 $this->tpl->setCurrentBlock(
'chapter');
106 include_once(
'Modules/LearningModule/classes/class.ilLMObject.php');
108 if ($this->objective_lm->isChapterAssigned($a_set[
'id'], $sub_data[
'id'])) {
109 $this->tpl->setVariable(
'CHAP_CHECKED',
'checked="checked"');
113 $this->tpl->setVariable(
'CHAP_ID', $a_set[
'id'] .
'_' . $sub_data[
'id']);
114 $this->tpl->setVariable(
'CHAP_TYPE_IMG', ilObject::_getIcon($sub_data[
'id'],
"tiny", $sub_data[
'type']));
115 $this->tpl->setVariable(
'CHAP_TYPE_ALT', $this->lng->txt(
'obj_' . $sub_data[
'type']));
116 $this->tpl->parseCurrentBlock();
118 if (count($a_set[
'sub'])) {
119 $this->tpl->setVariable(
'TXT_CHAPTER', $this->lng->txt(
'objs_st'));
122 $this->tpl->setVariable(
'VAL_ID', $a_set[
'id']);
124 if ($this->objective_lm->isAssigned($a_set[
'id'])) {
125 $this->tpl->setVariable(
'VAL_CHECKED',
'checked="checked"');
128 $this->tpl->setVariable(
'ROW_TYPE_IMG', ilObject::_getIcon($a_set[
'obj_id'],
"tiny", $a_set[
'type']));
129 $this->tpl->setVariable(
'ROW_TYPE_ALT', $this->lng->txt(
'obj_' . $a_set[
'type']));
131 $this->tpl->setVariable(
'VAL_TITLE', $a_set[
'title']);
132 if (strlen($a_set[
'description'])) {
133 $this->tpl->setVariable(
'VAL_DESC', $a_set[
'description']);
144 public function parse($a_assignable)
148 $objDefinition = $DIC[
'objDefinition'];
150 $materials = array();
151 foreach ($a_assignable as $node) {
153 if ($objDefinition->isSideBlock($node[
'type'])) {
158 $subobjects = array();
160 if ($node[
'type'] ==
'lm') {
161 include_once(
'./Modules/LearningModule/classes/class.ilLMObject.php');
165 foreach ($chapters = $this->
getAllSubObjects($node[
'child']) as $chapter => $chapter_data) {
167 $sub[
'id'] = $chapter;
168 $sub[
'depth'] = $chapter_data[
'depth'];
169 $sub[
'type'] = $chapter_data[
'type'];
171 $subobjects[] = $sub;
175 $tmp_data[
'sub'] = $subobjects;
176 $tmp_data[
'title'] = $node[
'title'];
177 $tmp_data[
'description'] = $node[
'description'];
178 $tmp_data[
'type'] = $node[
'type'];
179 $tmp_data[
'id'] = $node[
'child'];
180 $tmp_data[
'obj_id'] = $node[
'obj_id'];
182 $materials[] = $tmp_data;
197 $tree->setTableNames(
'lm_tree',
'lm_data');
198 $tree->setTreeTablePK(
"lm_id");
200 foreach (
$tree->getSubTree(
$tree->getNodeData(
$tree->getRootId())) as $node) {
201 if ($node[
'type'] ==
'st' or $node[
'type'] ==
'pg') {
202 $depth = $node[
'depth'] - 1;
203 $child = $node[
'child'];
204 $chapter[$child][
'depth'] = $depth;
205 $chapter[$child][
'type'] = $node[
'type'];
208 return $chapter ? $chapter : array();
220 include_once(
'./Modules/Course/classes/class.ilCourseObjective.php');
221 $this->objective =
new ilCourseObjective($this->course_obj, $this->objective_id);
223 include_once
'./Modules/Course/classes/class.ilCourseObjectiveMaterials.php';
addCommandButton($a_cmd, $a_text, $a_onclick='', $a_id="", $a_class=null)
Add Command button.
parse($a_assignable)
parse
setDefaultOrderField($a_defaultorderfield)
Set Default order field.
__construct($a_parent_obj, $a_course_obj, $a_objective_id)
Constructor.
static _lookupTitle($a_obj_id)
Lookup title.
setNoEntriesText($a_text)
Set text for an empty table.
TableGUI for material assignments of course objectives.
class ilCourseObjectiveMaterials
initObjectiveAssignments()
init objective assignments
static _lookupObjId($a_id)
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
setRowTemplate($a_template, $a_template_dir="")
Set row template.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
setFormName($a_formname="")
Set Form name.
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.
getAllSubObjects($a_ref_id)
get all subobject (structure and page objects) of a lm
setLimit($a_limit=0, $a_default_limit=0)