ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
class.ilRoleAssignmentTableGUI.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 include_once("./Services/Table/classes/class.ilTable2GUI.php");
5 
15 {
16 
20  public function __construct($a_parent_obj, $a_parent_cmd)
21  {
22  global $DIC;
23 
24  $ilCtrl = $DIC['ilCtrl'];
25  $lng = $DIC['lng'];
26  $rbacsystem = $DIC['rbacsystem'];
27 
28  $lng->loadLanguageModule('rbac');
29  $this->setId("usrroleass");
30 
31  parent::__construct($a_parent_obj, $a_parent_cmd);
32 
33  $this->setTitle($lng->txt("role_assignment"));
34  $this->setDefaultOrderField("title");
35  $this->setDefaultOrderDirection("asc");
36  $this->setDisableFilterHiding(true);
37  $this->addColumn("", "", "1", true);
38  $this->addColumn($this->lng->txt("role"), "title");
39  $this->addColumn($this->lng->txt("description"), "description");
40  $this->addColumn($this->lng->txt("context"), "path");
41  $this->initFilter();
42  $this->setEnableHeader(true);
43  $this->setRowTemplate("tpl.role_assignment_row.html", "Services/User");
44  $this->setEnableTitle(true);
45 
46  if ($rbacsystem->checkAccess("edit_roleassignment", USER_FOLDER_ID)) {
47  $this->setSelectAllCheckbox("role_id[]");
48  $this->setFormAction($ilCtrl->getFormAction($a_parent_obj));
49  $this->addMultiCommand("assignSave", $lng->txt("change_assignment"));
50  }
51  }
52 
56  public function initFilter()
57  {
58  global $DIC;
59 
60  $lng = $DIC['lng'];
61 
62  // roles
63  $option[0] = $lng->txt('assigned_roles');
64  $option[1] = $lng->txt('all_roles');
65  $option[2] = $lng->txt('all_global_roles');
66  $option[3] = $lng->txt('all_local_roles');
67  $option[4] = $lng->txt('internal_local_roles_only');
68  $option[5] = $lng->txt('non_internal_local_roles_only');
69 
70  include_once("./Services/Form/classes/class.ilSelectInputGUI.php");
71  $si = new ilSelectInputGUI($lng->txt("roles"), "role_filter");
72  $si->setOptions($option);
73  $this->addFilterItem($si);
74  $si->readFromSession();
75  $this->filter["role_filter"] = $si->getValue();
76  }
77 
81  protected function fillRow($a_set)
82  {
83  global $DIC;
84 
85  $lng = $DIC['lng'];
86 
87  if ($a_set['checkbox']) {
88  $this->tpl->setVariable("CHECKBOX", $a_set["checkbox"]);
89  }
90  $this->tpl->setVariable("ROLE", $a_set["role"]);
91  $this->tpl->setVariable("DESCRIPTION", $a_set["description"]);
92  $this->tpl->setVariable("CONTEXT", $a_set["context"]);
93  }
94 }
setDefaultOrderField($a_defaultorderfield)
Set Default order field.
addFilterItem($a_input_item, $a_optional=false)
Add filter item.
setId($a_val)
Set id.
global $ilCtrl
Definition: ilias.php:18
setDefaultOrderDirection($a_defaultorderdirection)
Set Default order direction.
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
setSelectAllCheckbox($a_select_all_checkbox, $a_select_all_on_top=false)
Set the name of the checkbox that should be toggled with a select all button.
setDisableFilterHiding($a_val=true)
Set disable filter hiding.
addMultiCommand($a_cmd, $a_text)
Add Command button.
setRowTemplate($a_template, $a_template_dir="")
Set row template.
__construct($a_parent_obj, $a_parent_cmd)
Constructor.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
TableGUI class for role assignment in user administration.
__construct(Container $dic, ilPlugin $plugin)
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.
$DIC
Definition: xapitoken.php:46
const USER_FOLDER_ID
Class ilObjUserFolder.
setEnableHeader($a_enableheader)
Set Enable Header.
setEnableTitle($a_enabletitle)
Set Enable Title.