ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilCourseGroupingTableGUI.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2010 ILIAS open source, Extended GPL, see docs/LICENSE */
3
4include_once('./Services/Table/classes/class.ilTable2GUI.php');
5
14{
15 public function __construct($a_parent_obj, $a_parent_cmd, $a_content_obj)
16 {
17 global $lng, $ilCtrl;
18
19 $this->lng = $lng;
20 $this->ctrl = $ilCtrl;
21
22 parent::__construct($a_parent_obj, $a_parent_cmd);
23
24 $type = ilObject::_lookupType($a_content_obj->getId());
25 $this->lng->loadLanguageModule($type);
26
27 $this->addColumn('', '', 1);
28 $this->addColumn($this->lng->txt('title'), 'title');
29 $this->addColumn($this->lng->txt('description'), 'description');
30 $this->addColumn($this->lng->txt('unambiguousness'), 'unique');
31 $this->addColumn($this->lng->txt('groupings_assigned_obj_' . $type), 'assigned');
32 $this->addColumn('', '');
33
34
35 $this->setTitle($this->lng->txt('groupings'));
36
37 $this->addMultiCommand('askDeleteGrouping', $this->lng->txt('delete'));
38 $this->setSelectAllCheckbox('grouping');
39
40 $this->setRowTemplate("tpl.groupings.html", "Modules/Course");
41 $this->setFormAction($this->ctrl->getFormAction($a_parent_obj));
42
43 $this->setDefaultOrderField('title');
44 $this->setDefaultOrderDirection('asc');
45
46 $this->getItems($a_content_obj);
47 }
48
49 protected function getItems($a_content_obj)
50 {
51 $items = ilObjCourseGrouping::_getVisibleGroupings($a_content_obj->getId());
52
53 $data = array();
54 foreach ($items as $grouping_id) {
55 $tmp_obj = new ilObjCourseGrouping($grouping_id);
56
57 $data[$grouping_id]['id'] = $grouping_id;
58 $data[$grouping_id]['title'] = $tmp_obj->getTitle();
59 $data[$grouping_id]['unique'] = $this->lng->txt($tmp_obj->getUniqueField());
60
61 // Description
62 if (strlen($tmp_obj->getDescription())) {
63 $data[$grouping_id]['description'] = $tmp_obj->getDescription();
64 }
65
66 // Assigned items
67 $assigned_items = $tmp_obj->getAssignedItems();
68 foreach ($assigned_items as $condition) {
69 $data[$grouping_id]['assigned'][] = ilObject::_lookupTitle($condition['target_obj_id']);
70 }
71 }
72
73 $this->setData($data);
74 }
75
76 public function fillRow($a_set)
77 {
78 if (count($a_set["assigned"])) {
79 foreach ($a_set["assigned"] as $item) {
80 $this->tpl->setCurrentBlock("assigned");
81 $this->tpl->setVariable("ITEM_TITLE", $item);
82 $this->tpl->parseCurrentBlock();
83 }
84 } else {
85 $this->tpl->setCurrentBlock("assigned");
86 $this->tpl->setVariable("ITEM_TITLE", $this->lng->txt('crs_grp_no_courses_assigned'));
87 $this->tpl->parseCurrentBlock();
88 }
89
90 $this->tpl->setVariable("ID", $a_set["id"]);
91 $this->tpl->setVariable("TXT_TITLE", $a_set["title"]);
92 $this->tpl->setVariable("TXT_DESCRIPTION", $a_set["description"]);
93 $this->tpl->setVariable("TXT_UNIQUE", $a_set["unique"]);
94
95 $this->ctrl->setParameter($this->parent_obj, 'obj_id', $a_set["id"]);
96 $this->tpl->setVariable(
97 "EDIT_LINK",
98 $this->ctrl->getLinkTarget($this->parent_obj, 'edit')
99 );
100 $this->tpl->setVariable('TXT_EDIT', $this->lng->txt('edit'));
101 }
102}
An exception for terminatinating execution or to throw for unit testing.
fillRow($a_set)
Standard Version of Fill Row.
__construct($a_parent_obj, $a_parent_cmd, $a_content_obj)
ilTable2GUI constructor.
Class ilObj<module_name>
static _getVisibleGroupings($a_obj_id)
static _lookupTitle($a_id)
lookup object title
static _lookupType($a_id, $a_reference=false)
lookup object type
Class ilTable2GUI.
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
setData($a_data)
set table data @access public
setRowTemplate($a_template, $a_template_dir="")
Set row template.
addMultiCommand($a_cmd, $a_text)
Add Command button.
setDefaultOrderField($a_defaultorderfield)
Set Default order field.
setSelectAllCheckbox($a_select_all_checkbox)
Set the name of the checkbox that should be toggled with a select all button.
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.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
setDefaultOrderDirection($a_defaultorderdirection)
Set Default order direction.
global $ilCtrl
Definition: ilias.php:18
$type