19declare(strict_types=1);
42 if (
null === $cache) {
44 (!$this->dic->user()->isAnonymous() && $this->dic->user()->getId() > 0) &&
45 $this->origin->hasCurrentUserAccessToMyStaff()
56 if (
null === $cache) {
57 $cache = $this->origin->hasCurrentUserAccessToCertificates();
67 if (
null === $cache) {
68 $cache = $this->origin->hasCurrentUserAccessToTalks();
78 if (
null === $cache) {
79 $cache = $this->origin->hasCurrentUserAccessToCompetences();
89 if (
null === $cache) {
90 $cache = $this->origin->hasCurrentUserAccessToCourseMemberships();
100 if (
null === $cache) {
101 $cache = $this->origin->hasCurrentUserAccessToStaffList();
111 if (!isset($cache[$usr_id])) {
112 $cache[$usr_id] = $this->origin->hasCurrentUserAccessToUser($usr_id);
115 return $cache[$usr_id];
123 $cache[
$ref_id] = $this->origin->hasCurrentUserAccessToLearningProgressInObject(
$ref_id);
131 static $cache =
null;
133 if (
null === $cache) {
134 $cache = $this->origin->hasCurrentUserAccessToCourseLearningProgressForAtLeastOneUser();
147 $cache_key = implode(
'#', [$position_id, $operation_id, $context_id]);
149 if (!isset($cache[$cache_key])) {
150 $cache[$cache_key] = $this->origin->hasPositionDefaultPermissionForOperationInContext(
157 return $cache[$cache_key];
162 return $this->origin->countOrgusOfUserWithAtLeastOneOperation(
$user_id);
167 string $org_unit_operation_string,
170 return $this->origin->countOrgusOfUserWithOperationAndContext(
172 $org_unit_operation_string,
180 string $org_unit_operation_string,
182 string $tmp_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX
184 return $this->origin->getUsersForUserOperationAndContext(
186 $org_unit_operation_string,
188 $tmp_table_name_prefix
195 return $this->origin->getUsersForUserPerPosition(
$user_id);
201 return $this->origin->getUsersForUser(
$user_id, $position_id);
207 return $this->origin->getIdsForUserAndOperation(
217 return $this->origin->getIdsForPositionAndOperation(
231 return $this->origin->getIdsForPositionAndOperationAndContext(
242 string $org_unit_operation_string,
245 return $this->origin->getIlobjectsAndUsersForUserOperationAndContext(
247 $org_unit_operation_string,
255 string $org_unit_operation_string,
257 string $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX
259 return $this->origin->buildTempTableIlobjectsUserMatrixForUserOperationAndContext(
261 $org_unit_operation_string,
263 $temporary_table_name_prefix
269 string $org_unit_operation_string,
271 string $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS
273 return $this->origin->buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext(
274 $org_unit_operation_string,
276 $temporary_table_name_prefix
282 string $org_unit_operation_string,
284 string $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS
286 return $this->origin->buildTempTableIlobjectsDefaultPermissionSetForOperationAndContext(
287 $org_unit_operation_string,
289 $temporary_table_name_prefix
295 string $org_unit_operation_string,
297 string $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS
299 return $this->origin->buildTempTableIlorgunitDefaultPermissionSetForOperationAndContext(
300 $org_unit_operation_string,
302 $temporary_table_name_prefix
308 string $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS,
309 array $only_courses_of_user_ids = []
311 return $this->origin->buildTempTableCourseMemberships(
312 $temporary_table_name_prefix,
313 $only_courses_of_user_ids
319 string $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS,
320 array $only_orgus_of_user_ids = []
322 return $this->origin->buildTempTableOrguMemberships(
323 $temporary_table_name_prefix,
324 $only_orgus_of_user_ids
331 $this->origin->dropTempTable($temporary_table_name);
Customizing of pimple-DIC for ILIAS.
getIdsForPositionAndOperation(int $position_id, string $operation, bool $return_ref_id)
buildTempTableIlobjectsDefaultPermissionSetForOperationAndContext(string $org_unit_operation_string, string $context, string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS)
buildTempTableIlobjectsUserMatrixForUserOperationAndContext(int $user_id, string $org_unit_operation_string, string $context, string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX)
buildTempTableOrguMemberships(string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS, array $only_orgus_of_user_ids=[])
hasCurrentUserAccessToCourseMemberships()
getUsersForUser(int $user_id, ?int $position_id=null)
hasCurrentUserAccessToTalks()
buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext(string $org_unit_operation_string, string $context, string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS)
buildTempTableIlorgunitDefaultPermissionSetForOperationAndContext(string $org_unit_operation_string, string $context, string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS)
hasCurrentUserAccessToLearningProgressInObject(int $ref_id=0)
countOrgusOfUserWithOperationAndContext(int $user_id, string $org_unit_operation_string, string $context)
getIdsForUserAndOperation(int $user_id, string $operation, bool $return_ref_id=false)
hasCurrentUserAccessToCertificates()
hasCurrentUserAccessToCourseLearningProgressForAtLeastOneUser()
hasCurrentUserAccessToMyStaff()
__construct(Container $dic, ilMyStaffAccess $origin)
dropTempTable(string $temporary_table_name)
getIdsForPositionAndOperationAndContext(int $position_id, string $operation, string $context, bool $return_ref_id)
countOrgusOfUserWithAtLeastOneOperation(int $user_id)
hasCurrentUserAccessToUser(int $usr_id=0)
hasCurrentUserAccessToStaffList()
hasPositionDefaultPermissionForOperationInContext(int $position_id, int $operation_id, int $context_id)
getUsersForUserPerPosition(int $user_id)
hasCurrentUserAccessToCompetences()
getIlobjectsAndUsersForUserOperationAndContext(int $user_id, string $org_unit_operation_string, string $context)
getUsersForUserOperationAndContext(int $user_id, string $org_unit_operation_string, string $context, string $tmp_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX)
buildTempTableCourseMemberships(string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS, array $only_courses_of_user_ids=[])
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
return['delivery_method'=> 'php',]
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...