19 declare(strict_types=1);
103 $ilDB = $DIC->database();
105 switch ($a_context_type) {
106 case self::CONTEXT_MD:
107 return array($this->ref_id);
109 case self::CONTEXT_RECORD:
110 $set =
$ilDB->query(
"SELECT record_id id" .
111 " FROM adv_md_record");
114 case self::CONTEXT_FIELD:
115 case self::CONTEXT_SUBSTITUTION_COURSE:
116 case self::CONTEXT_SUBSTITUTION_GROUP:
117 case self::CONTEXT_SUBSTITUTION_SESSION:
118 case self::CONTEXT_SUBSTITUTION_CATEGORY:
119 case self::CONTEXT_SUBSTITUTION_IASS:
120 case self::CONTEXT_SUBSTITUTION_EXERCISE:
121 case self::CONTEXT_SUBSTITUTION_PRG:
122 case self::CONTEXT_SUBSTITUTION_ORG_UNIT:
123 $set =
$ilDB->query(
"SELECT field_id id" .
124 " FROM adv_mdf_definition");
127 case self::CONTEXT_SUBSTITUTION:
135 while ($row =
$ilDB->fetchAssoc($set)) {
146 self::CONTEXT_MD => array(
148 self::ACTION_MD_CREATE_RECORD
150 self::ACTION_MD_IMPORT_RECORDS
153 self::CONTEXT_RECORD => array(
155 self::ACTION_RECORD_EDIT
157 self::ACTION_RECORD_DELETE
159 self::ACTION_RECORD_EXPORT
161 self::ACTION_RECORD_TOGGLE_ACTIVATION
163 self::ACTION_RECORD_EDIT_FIELDS
165 self::ACTION_RECORD_FIELD_POSITIONS
167 self::ACTION_RECORD_CREATE_FIELD
169 "subactions" => array(
170 self::ACTION_RECORD_EDIT_PROPERTY =>
172 self::SUBACTION_RECORD_TITLE
174 self::SUBACTION_RECORD_DESCRIPTION
176 self::SUBACTION_RECORD_OBJECT_TYPES
180 self::CONTEXT_FIELD => array(
182 self::ACTION_FIELD_EDIT,
183 self::ACTION_FIELD_DELETE
185 "subactions" => array(
186 self::ACTION_FIELD_EDIT_PROPERTY =>
188 self::SUBACTION_FIELD_TITLE
190 self::SUBACTION_FIELD_DESCRIPTION
192 self::SUBACTION_FIELD_SEARCHABLE
194 self::SUBACTION_FIELD_PROPERTIES
198 self::CONTEXT_SUBSTITUTION => array(
200 self::ACTION_SUBSTITUTION_SHOW_DESCRIPTION
202 self::ACTION_SUBSTITUTION_SHOW_FIELDNAMES
204 self::ACTION_SUBSTITUTION_FIELD_POSITIONS
207 self::CONTEXT_SUBSTITUTION_COURSE => array(
209 self::ACTION_SUBSTITUTION_COURSE_SHOW_FIELD
211 "subactions" => array(
212 self::ACTION_SUBSTITUTION_COURSE_EDIT_FIELD_PROPERTY =>
214 self::SUBACTION_SUBSTITUTION_BOLD
216 self::SUBACTION_SUBSTITUTION_NEWLINE
220 self::CONTEXT_SUBSTITUTION_CATEGORY => array(
222 self::ACTION_SUBSTITUTION_CATEGORY_SHOW_FIELD
224 "subactions" => array(
225 self::ACTION_SUBSTITUTION_CATEGORY_EDIT_FIELD_PROPERTY =>
227 self::SUBACTION_SUBSTITUTION_BOLD
229 self::SUBACTION_SUBSTITUTION_NEWLINE
233 self::CONTEXT_SUBSTITUTION_SESSION => array(
235 self::ACTION_SUBSTITUTION_SESSION_SHOW_FIELD
237 "subactions" => array(
238 self::ACTION_SUBSTITUTION_SESSION_EDIT_FIELD_PROPERTY =>
240 self::SUBACTION_SUBSTITUTION_BOLD
242 self::SUBACTION_SUBSTITUTION_NEWLINE
246 self::CONTEXT_SUBSTITUTION_GROUP => array(
248 self::ACTION_SUBSTITUTION_GROUP_SHOW_FIELD
250 "subactions" => array(
251 self::ACTION_SUBSTITUTION_GROUP_EDIT_FIELD_PROPERTY =>
253 self::SUBACTION_SUBSTITUTION_BOLD
255 self::SUBACTION_SUBSTITUTION_NEWLINE
259 self::CONTEXT_SUBSTITUTION_IASS => array(
261 self::ACTION_SUBSTITUTION_IASS_SHOW_FIELD
263 "subactions" => array(
264 self::ACTION_SUBSTITUTION_IASS_EDIT_FIELD_PROPERTY =>
266 self::SUBACTION_SUBSTITUTION_BOLD
268 self::SUBACTION_SUBSTITUTION_NEWLINE
272 self::CONTEXT_SUBSTITUTION_EXERCISE => array(
274 self::ACTION_SUBSTITUTION_EXERCISE_SHOW_FIELD
276 "subactions" => array(
277 self::ACTION_SUBSTITUTION_EXERCISE_EDIT_FIELD_PROPERTY =>
279 self::SUBACTION_SUBSTITUTION_BOLD
281 self::SUBACTION_SUBSTITUTION_NEWLINE
285 self::CONTEXT_SUBSTITUTION_PRG => array(
287 self::ACTION_SUBSTITUTION_PRG_SHOW_FIELD
289 "subactions" => array(
290 self::ACTION_SUBSTITUTION_PRG_EDIT_FIELD_PROPERTY =>
292 self::SUBACTION_SUBSTITUTION_BOLD
294 self::SUBACTION_SUBSTITUTION_NEWLINE
298 self::CONTEXT_SUBSTITUTION_ORG_UNIT => [
300 self::ACTION_SUBSTITUTION_ORG_UNIT_SHOW_FIELD
303 self::ACTION_SUBSTITUTION_ORG_UNIT_EDIT_FIELD_PROPERTY =>
305 self::SUBACTION_SUBSTITUTION_BOLD
307 self::SUBACTION_SUBSTITUTION_NEWLINE
320 $component_factory = $DIC[
'component.factory'];
321 yield from $component_factory->getActivePluginsInSlot(
"amdc");
326 string $a_context_id,
328 ?
int $a_action_sub_id = null
332 $ilAccess = $DIC[
'ilAccess'];
334 if (!$this->
checkPlugins($a_context_type, $a_context_id, $a_action_id, $a_action_sub_id)) {
341 return $ilAccess->checkAccessOfUser($this->
getUserId(),
"read",
"", $this->
getRefId());
const ACTION_SUBSTITUTION_ORG_UNIT_EDIT_FIELD_PROPERTY
const ACTION_RECORD_FIELD_POSITIONS
const CONTEXT_SUBSTITUTION_COURSE
const ACTION_RECORD_EDIT_PROPERTY
const CONTEXT_SUBSTITUTION
const SUBACTION_FIELD_PROPERTIES
const SUBACTION_SUBSTITUTION_NEWLINE
const ACTION_RECORD_EXPORT
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
const CONTEXT_SUBSTITUTION_EXERCISE
const SUBACTION_SUBSTITUTION_BOLD
const ACTION_FIELD_DELETE
const CONTEXT_SUBSTITUTION_CATEGORY
const ACTION_RECORD_CREATE_FIELD
const CONTEXT_SUBSTITUTION_ORG_UNIT
const SUBACTION_RECORD_TITLE
const ACTION_FIELD_EDIT_PROPERTY
const CONTEXT_SUBSTITUTION_SESSION
const ACTION_MD_CREATE_RECORD
const ACTION_SUBSTITUTION_IASS_EDIT_FIELD_PROPERTY
const SUBACTION_FIELD_SEARCHABLE
const ACTION_SUBSTITUTION_SHOW_DESCRIPTION
const ACTION_MD_IMPORT_RECORDS
const ACTION_SUBSTITUTION_IASS_SHOW_FIELD
Advanced metadata permission helper.
const SUBACTION_FIELD_TITLE
const SUBACTION_RECORD_OBJECT_TYPES
const ACTION_SUBSTITUTION_CATEGORY_SHOW_FIELD
checkRBAC()
Check permission against RBAC.
const ACTION_RECORD_TOGGLE_ACTIVATION
readContextIds(int $a_context_type)
const ACTION_SUBSTITUTION_SESSION_SHOW_FIELD
const ACTION_SUBSTITUTION_ORG_UNIT_SHOW_FIELD
const ACTION_SUBSTITUTION_COURSE_EDIT_FIELD_PROPERTY
const ACTION_SUBSTITUTION_EXERCISE_EDIT_FIELD_PROPERTY
const ACTION_SUBSTITUTION_PRG_SHOW_FIELD
const ACTION_RECORD_EDIT_FIELDS
const ACTION_RECORD_DELETE
const ACTION_SUBSTITUTION_SHOW_FIELDNAMES
const ACTION_SUBSTITUTION_COURSE_SHOW_FIELD
const ACTION_SUBSTITUTION_FIELD_POSITIONS
const SUBACTION_FIELD_DESCRIPTION
const SUBACTION_RECORD_DESCRIPTION
const ACTION_SUBSTITUTION_SESSION_EDIT_FIELD_PROPERTY
const ACTION_SUBSTITUTION_CATEGORY_EDIT_FIELD_PROPERTY
const ACTION_SUBSTITUTION_PRG_EDIT_FIELD_PROPERTY
const CONTEXT_SUBSTITUTION_GROUP
const CONTEXT_SUBSTITUTION_PRG
const ACTION_SUBSTITUTION_EXERCISE_SHOW_FIELD
const CONTEXT_SUBSTITUTION_IASS
checkPlugins(int $a_context_type, string $a_context_id, int $a_action_id, ?int $a_action_sub_id=null)
Check permission against plugins.
checkPermission(int $a_context_type, string $a_context_id, int $a_action_id, ?int $a_action_sub_id=null)
const SUBACTION_UNDEFINED
const ACTION_SUBSTITUTION_GROUP_SHOW_FIELD
const ACTION_SUBSTITUTION_GROUP_EDIT_FIELD_PROPERTY