ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
class.ilObjRoleTemplate.php
Go to the documentation of this file.
1<?php
2/*
3 +-----------------------------------------------------------------------------+
4 | ILIAS open source |
5 +-----------------------------------------------------------------------------+
6 | Copyright (c) 1998-2001 ILIAS open source, University of Cologne |
7 | |
8 | This program is free software; you can redistribute it and/or |
9 | modify it under the terms of the GNU General Public License |
10 | as published by the Free Software Foundation; either version 2 |
11 | of the License, or (at your option) any later version. |
12 | |
13 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | GNU General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU General Public License |
19 | along with this program; if not, write to the Free Software |
20 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21 +-----------------------------------------------------------------------------+
22*/
23
24require_once "./Services/Object/classes/class.ilObject.php";
25
35{
42 public function __construct($a_id = 0, $a_call_by_reference = false)
43 {
44 $this->type = "rolt";
45 parent::__construct($a_id, $a_call_by_reference);
46 }
47
48
52 public function getPresentationTitle() : string
53 {
54 return ilObjRole::_getTranslation($this->getTitle());
55 }
56
63 public function delete()
64 {
65 // put here role template specific stuff
66 global $DIC;
67
68 $rbacadmin = $DIC['rbacadmin'];
69
70 // delete rbac permissions
71 $rbacadmin->deleteTemplate($this->getId(), $_GET["ref_id"]);
72
73 // always call parent delete function at the end!!
74 return (parent::delete()) ? true : false;
75 }
76
77 public function isInternalTemplate()
78 {
79 if (substr($this->getTitle(), 0, 3) == "il_") {
80 return true;
81 }
82
83 return false;
84 }
85
87 {
88 global $DIC;
89
90 $objDefinition = $DIC['objDefinition'];
91
92 $filter = array();
93
94 switch ($this->getTitle()) {
95 case "il_grp_admin":
96 case "il_grp_member":
97 case "il_grp_status_closed":
98 case "il_grp_status_open":
99 $obj_data = $objDefinition->getSubObjects('grp', false);
100 unset($obj_data["rolf"]);
101 $filter = array_keys($obj_data);
102 $filter[] = 'grp';
103 break;
104
105 case "il_crs_admin":
106 case "il_crs_tutor":
107 case "il_crs_member":
108 case "il_crs_non_member":
109 $obj_data = $objDefinition->getSubObjects('crs', false);
110 unset($obj_data["rolf"]);
111 $filter = array_keys($obj_data);
112 $filter[] = 'crs';
113 break;
114 case "il_frm_moderator":
115 $filter[] = 'frm';
116 break;
117 case "il_chat_moderator":
118 $filter[] = 'chtr';
119 break;
120 }
121
122 return $filter;
123 }
124} // END class.ilObjRoleTemplate
$_GET["client_id"]
An exception for terminatinating execution or to throw for unit testing.
Class ilObjRoleTemplate.
getPresentationTitle()
return translated title for autogenerated templates
__construct($a_id=0, $a_call_by_reference=false)
Constructor @access public.
static _getTranslation($a_role_title)
Class ilObject Basic functions for all objects.
getId()
get object id @access public
getTitle()
get object title @access public
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc
$DIC
Definition: xapitoken.php:46