ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ILIAS\MyStaff\ilMyStaffAccess Class Reference

Class ilMyStaffAccess. More...

+ Inheritance diagram for ILIAS\MyStaff\ilMyStaffAccess:
+ Collaboration diagram for ILIAS\MyStaff\ilMyStaffAccess:

Public Member Functions

 __construct ()
 
 hasCurrentUserAccessToMyStaff ()
 
 hasCurrentUserAccessToCertificates ()
 
 hasCurrentUserAccessToTalks ()
 
 hasCurrentUserAccessToCompetences ()
 
 hasCurrentUserAccessToCourseMemberships ()
 
 hasCurrentUserAccessToStaffList ()
 
 hasCurrentUserAccessToUser (int $usr_id)
 
 hasCurrentUserAccessToLearningProgressInObject (int $ref_id=0)
 
 hasCurrentUserAccessToCourseLearningProgressForAtLeastOneUser ()
 
 countOrgusOfUserWithAtLeastOneOperation (int $user_id)
 
 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)
 
 getUsersForUserPerPosition (int $user_id)
 
 getUsersForUser (int $user_id, ?int $position_id=null)
 
 getIdsForUserAndOperation (int $user_id, string $operation, bool $return_ref_id=false)
 
 getIdsForPositionAndOperation (int $position_id, string $operation, bool $return_ref_id)
 
 hasPositionDefaultPermissionForOperationInContext (int $position_id, int $operation_id, int $context_id)
 
 getIlobjectsAndUsersForUserOperationAndContext (int $user_id, string $org_unit_operation_string, string $context)
 
 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)
 
 buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext (string $org_unit_operation_string, string $context, string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS)
 
 buildTempTableCourseMemberships (string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS, array $only_courses_of_user_ids=array())
 
 buildTempTableOrguMemberships (string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS, array $only_orgus_of_user_ids=array())
 
 dropTempTable (string $temporary_table_name)
 
- Public Member Functions inherited from ilObjectAccess
 _checkAccess (string $cmd, string $permission, int $ref_id, int $obj_id, ?int $user_id=null)
 Checks whether a user may invoke a command or not (this method is called by ilAccessHandler::checkAccess) More...
 
 canBeDelivered (ilWACPath $ilWACPath)
 
 canBeDelivered (ilWACPath $ilWACPath)
 

Static Public Member Functions

static getInstance ()
 
static isMyStaffActive ()
 
- Static Public Member Functions inherited from ilObjectAccess
static _getCommands ()
 get commands More...
 
static _checkGoto (string $target)
 check whether goto script will succeed More...
 
static _isOffline (int $obj_id)
 Type-specific implementation of general status, has to be overwritten if object type does not support centralized offline handling. More...
 
static _preloadData (array $obj_ids, array $ref_ids)
 Preload data. More...
 

Data Fields

const string TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS = 'tmp_obj_spec_perm'
 
const string TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS = 'tmp_obj_def_perm'
 
const string TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS = 'tmp_orgu_def_perm'
 
const string TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS = 'tmp_crs_members'
 
const string TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS = 'tmp_orgu_members'
 
const string TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX = 'tmp_obj_user_matr'
 
const string ACCESS_ENROLMENTS_ORG_UNIT_OPERATION = ilOrgUnitOperation::OP_ACCESS_ENROLMENTS
 
const string COURSE_CONTEXT = ilOrgUnitOperationContext::CONTEXT_CRS
 
const string EXERCISE_CONTEXT = ilOrgUnitOperationContext::CONTEXT_EXC
 
const string GROUP_CONTEXT = ilOrgUnitOperationContext::CONTEXT_GRP
 
const string SURVEY_CONTEXT = ilOrgUnitOperationContext::CONTEXT_SVY
 
const string TEST_CONTEXT = ilOrgUnitOperationContext::CONTEXT_TST
 
const string EMPLOYEE_TALK_CONTEXT = ilOrgUnitOperationContext::CONTEXT_ETAL
 

Protected Attributes

array $users_for_user = []
 

Static Protected Attributes

static self $instance = null
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ILIAS\MyStaff\ilMyStaffAccess::__construct ( )

Definition at line 78 of file class.ilMyStaffAccess.php.

79 {
80 }

Member Function Documentation

◆ buildTempTableCourseMemberships()

ILIAS\MyStaff\ilMyStaffAccess::buildTempTableCourseMemberships ( string  $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS,
array  $only_courses_of_user_ids = array() 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 915 of file class.ilMyStaffAccess.php.

918 : string {
919 global $DIC;
920
921 $temporary_table_name = $temporary_table_name_prefix . "_user_id_" . $DIC->user()->getId();
922
923 if ($temporary_table_name != self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS . "_user_id_" . $DIC->user()->getId()
924 || count($only_courses_of_user_ids) > 0
925 ) {
926 $this->dropTempTable($temporary_table_name);
927 }
928
929 $q = "CREATE TEMPORARY TABLE IF NOT EXISTS " . $temporary_table_name . "
930 (INDEX i1(ref_id), INDEX i2 (usr_id), INDEX i3 (position_id), INDEX i4 (orgu_id))
931 AS (
932 SELECT crs_members_crs_ref.ref_id, crs_members.usr_id, orgu_ua.position_id, orgu_ua.orgu_id
933 FROM (
934 SELECT obj_id, usr_id FROM obj_members WHERE admin > 0 OR tutor > 0 OR member > 0
935 AND " . $DIC->database()->in(
936 'obj_members.usr_id',
937 $only_courses_of_user_ids,
938 false,
939 'integer'
940 ) . "
941 UNION
942 SELECT obj_id, usr_id FROM crs_waiting_list
943 WHERE " . $DIC->database()->in(
944 'crs_waiting_list.usr_id',
945 $only_courses_of_user_ids,
946 false,
947 'integer'
948 ) . "
949 UNION
950 SELECT obj_id, usr_id FROM il_subscribers
951 WHERE " . $DIC->database()->in(
952 'il_subscribers.usr_id',
953 $only_courses_of_user_ids,
954 false,
955 'integer'
956 ) . "
957 ) AS crs_members
958 INNER JOIN object_reference AS crs_members_crs_ref on crs_members_crs_ref.obj_id = crs_members.obj_id
959 INNER JOIN il_orgu_ua AS orgu_ua on orgu_ua.user_id = crs_members.usr_id
960 );";
961
962 $DIC->database()->manipulate($q);
963
964 return $temporary_table_name;
965 }
dropTempTable(string $temporary_table_name)
global $DIC
Definition: shib_login.php:26
$q
Definition: shib_logout.php:23

◆ buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext()

ILIAS\MyStaff\ilMyStaffAccess::buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext ( string  $org_unit_operation_string,
string  $context,
string  $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 766 of file class.ilMyStaffAccess.php.

770 : string {
771 global $DIC;
772
773 $temporary_table_name = $temporary_table_name_prefix . "_" . $org_unit_operation_string . "_" . $context;
774
775 $operation = ilOrgUnitOperationQueries::findByOperationString($org_unit_operation_string, $context);
776 assert($operation instanceof ilOrgUnitOperation);
777
778 if ($temporary_table_name != self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS . "_" . self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION . "_"
779 . self::COURSE_CONTEXT
780 ) {
781 $this->dropTempTable($temporary_table_name);
782 }
783
784 $q = "CREATE TEMPORARY TABLE IF NOT EXISTS " . $temporary_table_name . "
785 (INDEX i1 (perm_for_ref_id), INDEX i2 (perm_for_orgu_id), INDEX i3 (perm_orgu_scope), INDEX i4 (perm_for_position_id), INDEX i5 (perm_over_user_with_position))
786 AS (
787 SELECT
788 obj_ref.ref_id AS perm_for_ref_id,
789 orgu_ua.orgu_id AS perm_for_orgu_id,
790 auth.scope AS perm_orgu_scope,
791 orgu_ua.position_id AS perm_for_position_id,
792 auth.over AS perm_over_user_with_position
793 FROM
794 il_orgu_permissions AS perm
795 INNER JOIN il_orgu_ua AS orgu_ua ON orgu_ua.position_id = perm.position_id
796 INNER JOIN il_orgu_authority AS auth ON auth.position_id = orgu_ua.position_id AND orgu_ua.user_id = " . $GLOBALS['DIC']->user()
797 ->getId() . "
798 INNER JOIN object_reference AS obj_ref ON obj_ref.ref_id = perm.parent_id
799 INNER JOIN object_data AS obj ON obj.obj_id = obj_ref.obj_id AND obj.type = '$context'
800 INNER JOIN il_orgu_op_contexts AS contexts on contexts.id = perm.context_id AND contexts.context = '$context'
801 WHERE
802 perm.operations REGEXP '[\\\[,]\"?" . $operation->getOperationId() . "\"?[\],]'
803 );";
804
805 $DIC->database()->manipulate($q);
806
807 return $temporary_table_name;
808 }
static findByOperationString(string $operation_string, string $context_name)
@deprecated Please use find() from OrgUnitOperationRepository
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$GLOBALS["DIC"]
Definition: wac.php:54
$context
Definition: webdav.php:31

◆ buildTempTableIlobjectsUserMatrixForUserOperationAndContext()

ILIAS\MyStaff\ilMyStaffAccess::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 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 627 of file class.ilMyStaffAccess.php.

632 : string {
633 global $DIC;
634
635 $temporary_table_name = $temporary_table_name_prefix . "_" . $org_unit_operation_string . "_" . $context;
636
637 $operation = ilOrgUnitOperationQueries::findByOperationString($org_unit_operation_string, $context);
638 assert($operation instanceof ilOrgUnitOperation);
639
640 $all_users_for_user = $this->getUsersForUser($GLOBALS['DIC']->user()->getId());
641
642
643 $tmp_table_objects_specific_perimissions = $this->buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext(
644 $org_unit_operation_string,
645 $context,
646 self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS
647 );
648
649 $tmp_table_objects_default_perimissions = $this->buildTempTableIlobjectsDefaultPermissionSetForOperationAndContext(
650 $org_unit_operation_string,
651 $context,
652 self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS
653 );
654
655 $tmp_table_orgunit_default_perimissions = $this->buildTempTableIlorgunitDefaultPermissionSetForOperationAndContext(
656 $org_unit_operation_string,
657 $context,
658 self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS
659 );
660
661 $tmp_table_course_members = $this->buildTempTableCourseMemberships(
662 self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS,
663 $all_users_for_user
664 );
665
666 $tmp_table_orgu_members = $this->buildTempTableOrguMemberships(
667 self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS,
668 $all_users_for_user
669 );
670
671 $tmp_table_orgu_member_path = $this->buildTempTableOrguMemberships(
672 'tmp_orgu_members_path',
673 $all_users_for_user
674 );
675
676 if ($temporary_table_name != self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX . "_" . self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION . "_"
677 . self::COURSE_CONTEXT
678 ) {
679 $this->dropTempTable($temporary_table_name);
680 }
681
682 $q = "CREATE TEMPORARY TABLE IF NOT EXISTS " . $temporary_table_name . " AS (
683 SELECT DISTINCT user_perm_matrix.perm_for_ref_id, user_perm_matrix.usr_id FROM
684 (
685 SELECT crs.*," . $tmp_table_course_members . ".ref_id," . $tmp_table_course_members . ".usr_id FROM
686 (
687 SELECT * FROM " . $tmp_table_objects_specific_perimissions . "
688 UNION
689 SELECT * FROM " . $tmp_table_objects_default_perimissions . "
690 ) AS crs
691 INNER JOIN " . $tmp_table_course_members . " on " . $tmp_table_course_members . ".ref_id = crs.perm_for_ref_id
692 and (
693 (
694 " . $tmp_table_course_members . ".orgu_id = crs.perm_for_orgu_id AND " . $tmp_table_course_members . ".position_id = crs.perm_over_user_with_position AND perm_orgu_scope = 1
695 )
696 or perm_orgu_scope = 2
697 )
698 UNION
699 SELECT " . $tmp_table_orgunit_default_perimissions . ".*, " . $tmp_table_orgu_members . ".orgu_id AS ref_id, "
700 . $tmp_table_orgu_members . ".user_id FROM " . $tmp_table_orgunit_default_perimissions . "
701 INNER JOIN " . $tmp_table_orgu_members . " on " . $tmp_table_orgu_members . ".orgu_id = "
702 . $tmp_table_orgunit_default_perimissions . ".perm_for_ref_id
703 and (
704 (
705 " . $tmp_table_orgu_members . ".orgu_id = " . $tmp_table_orgunit_default_perimissions . ".perm_for_orgu_id AND "
706 . $tmp_table_orgu_members . ".user_position_id = " . $tmp_table_orgunit_default_perimissions . ".perm_over_user_with_position AND perm_orgu_scope = 1
707 )
708 or perm_orgu_scope = 2
709 )
710
711 ) AS user_perm_matrix
712 INNER JOIN " . $tmp_table_orgu_member_path . " AS path on path.user_id = user_perm_matrix.usr_id
713
714 INNER JOIN il_orgu_ua AS orgu_ua_current_user on orgu_ua_current_user.user_id = " . $DIC->database()->quote(
715 $user_id,
716 'integer'
717 ) . "
718 INNER JOIN il_orgu_permissions AS perm on perm.position_id = orgu_ua_current_user.position_id AND perm.parent_id = -1
719 INNER JOIN il_orgu_op_contexts AS contexts on contexts.id = perm.context_id AND contexts.context = '$context'
720 and perm.operations REGEXP '[\\\[,]\"?" . $operation->getOperationId() . "\"?[\],]'
721
722 AND
723 (
724 /* Identische OrgUnit wie Current User; Nicht Rekursiv; Fixe Position */
725 (orgu_ua_current_user.orgu_id = user_perm_matrix.perm_for_orgu_id AND user_perm_matrix.perm_orgu_scope = 1
726 AND orgu_ua_current_user.position_id = user_perm_matrix.perm_for_position_id AND user_perm_matrix.perm_over_user_with_position <> -1
727 )
728 OR
729 /* Identische OrgUnit wie Current User; Nicht Rekursiv; Position egal */
730 (orgu_ua_current_user.orgu_id = user_perm_matrix.perm_for_orgu_id AND user_perm_matrix.perm_orgu_scope = 1 AND user_perm_matrix.perm_over_user_with_position = -1)
731 OR
732 /* Kinder OrgUnit wie Current User */
733 (
734 orgu_ua_current_user.orgu_id = user_perm_matrix.perm_for_orgu_id
735 AND
736 (
737 path.orgu_id = user_perm_matrix.perm_for_orgu_id OR
738 path.tree_path LIKE CONCAT(\"%.\",user_perm_matrix.perm_for_orgu_id ,\".%\")
739 OR
740 path.tree_path LIKE CONCAT(\"%.\",user_perm_matrix.perm_for_orgu_id )
741 )
742 AND
743 (
744 (
745 (
746 /* Gleiche Position */
747 orgu_ua_current_user.position_id = user_perm_matrix.perm_for_position_id AND user_perm_matrix.perm_over_user_with_position <> -1
748 )
749 OR
750 (
751 /* Position Egal */
752 user_perm_matrix.perm_over_user_with_position = -1
753 )
754 )
755 AND user_perm_matrix.perm_orgu_scope = 2
756 )
757 )
758 )
759 );";
760
761 $DIC->database()->manipulate($q);
762
763 return $temporary_table_name;
764 }
buildTempTableOrguMemberships(string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS, array $only_orgus_of_user_ids=array())
buildTempTableCourseMemberships(string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS, array $only_courses_of_user_ids=array())
getUsersForUser(int $user_id, ?int $position_id=null)
buildTempTableIlobjectsSpecificPermissionSetForOperationAndContext(string $org_unit_operation_string, string $context, string $temporary_table_name_prefix=self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS)

◆ buildTempTableOrguMemberships()

ILIAS\MyStaff\ilMyStaffAccess::buildTempTableOrguMemberships ( string  $temporary_table_name_prefix = self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS,
array  $only_orgus_of_user_ids = array() 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 967 of file class.ilMyStaffAccess.php.

970 : string {
971 global $DIC;
972
973 $temporary_table_name = $temporary_table_name_prefix . "_user_id_" . $DIC->user()->getId();
974
975 if ($temporary_table_name != self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS . "_user_id_" . $DIC->user()->getId()
976 || count($only_orgus_of_user_ids) > 0
977 ) {
978 $this->dropTempTable($temporary_table_name);
979 }
980
981 $q = "CREATE TEMPORARY TABLE IF NOT EXISTS " . $temporary_table_name . "
982 (INDEX i1(orgu_id), INDEX i2 (tree_path(255)), INDEX i3 (tree_child), INDEX i4 (tree_parent), INDEX i5 (tree_lft), INDEX i6 (tree_rgt), INDEX i7 (user_position_id), INDEX i8 (user_id))
983 AS (
984 SELECT orgu_ua.orgu_id AS orgu_id,
985 tree_orgu.path AS tree_path,
986 tree_orgu.child AS tree_child,
987 tree_orgu.parent AS tree_parent,
988 tree_orgu.lft AS tree_lft,
989 tree_orgu.rgt AS tree_rgt,
990 orgu_ua.position_id AS user_position_id,
991 orgu_ua.user_id AS user_id
992 FROM
993 il_orgu_ua AS orgu_ua
994 INNER JOIN object_reference AS obj_ref on obj_ref.ref_id = orgu_ua.orgu_id AND obj_ref.deleted is null
995 LEFT JOIN tree AS tree_orgu ON tree_orgu.child = orgu_ua.orgu_id";
996
997 if (count($only_orgus_of_user_ids) > 0) {
998 $q .= " WHERE " . $DIC->database()->in('orgu_ua.user_id', $only_orgus_of_user_ids, false, 'integer') . " ";
999 }
1000
1001 $q .= ");";
1002
1003 $DIC->database()->manipulate($q);
1004
1005 return $temporary_table_name;
1006 }

◆ countOrgusOfUserWithAtLeastOneOperation()

ILIAS\MyStaff\ilMyStaffAccess::countOrgusOfUserWithAtLeastOneOperation ( int  $user_id)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 332 of file class.ilMyStaffAccess.php.

332 : int
333 {
334 global $DIC;
335
336 $q = "SELECT COUNT(orgu_ua.orgu_id) AS 'cnt' FROM il_orgu_permissions AS perm
337 INNER JOIN il_orgu_ua AS orgu_ua ON orgu_ua.position_id = perm.position_id
338 INNER JOIN il_orgu_op_contexts AS contexts on contexts.id = perm.context_id AND contexts.context is not NULL
339 WHERE orgu_ua.user_id = " . $DIC->database()->quote(
340 $user_id,
341 'integer'
342 ) . " AND perm.operations is not NULL AND perm.parent_id = -1";
343
344 $set = $DIC->database()->query($q);
345 $rec = $DIC->database()->fetchAssoc($set);
346
347 return $rec['cnt'];
348 }

References $DIC, $q, and $user_id.

◆ dropTempTable()

ILIAS\MyStaff\ilMyStaffAccess::dropTempTable ( string  $temporary_table_name)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 1008 of file class.ilMyStaffAccess.php.

1008 : void
1009 {
1010 global $DIC;
1011
1012 $q = "DROP TABLE IF EXISTS " . $temporary_table_name;
1013 $DIC->database()->manipulate($q);
1014 }

References $DIC, and $q.

◆ getIdsForPositionAndOperation()

ILIAS\MyStaff\ilMyStaffAccess::getIdsForPositionAndOperation ( int  $position_id,
string  $operation,
bool  $return_ref_id 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 517 of file class.ilMyStaffAccess.php.

517 : array
518 {
519 $ids = [];
521 $ref_ids = $this->getIdsForPositionAndOperationAndContext(
522 $position_id,
523 $operation,
524 $context,
525 $return_ref_id
526 );
527 if (count($ref_ids) > 0) {
528 $ids = array_merge($ids, $ref_ids);
529 }
530 }
531
532 return $ids;
533 }

References ilOrgUnitOperationContext\$available_contexts, and $context.

◆ getIdsForUserAndOperation()

ILIAS\MyStaff\ilMyStaffAccess::getIdsForUserAndOperation ( int  $user_id,
string  $operation,
bool  $return_ref_id = false 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 500 of file class.ilMyStaffAccess.php.

500 : array
501 {
502 $user_assignments = ilOrgUnitUserAssignmentQueries::getInstance()->getAssignmentsOfUserId($user_id);
503 $ids = [];
504 foreach ($user_assignments as $user_assignment) {
505 $ref_ids = $this->getIdsForPositionAndOperation(
506 $user_assignment->getPositionId(),
507 $operation,
508 $return_ref_id
509 );
510 if (count($ref_ids) > 0) {
511 $ids = array_merge($ids, $ref_ids);
512 }
513 }
514 return $ids;
515 }
getIdsForPositionAndOperation(int $position_id, string $operation, bool $return_ref_id)

References $user_id, and ilOrgUnitUserAssignmentQueries\getInstance().

+ Here is the call graph for this function:

◆ getIlobjectsAndUsersForUserOperationAndContext()

ILIAS\MyStaff\ilMyStaffAccess::getIlobjectsAndUsersForUserOperationAndContext ( int  $user_id,
string  $org_unit_operation_string,
string  $context 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 594 of file class.ilMyStaffAccess.php.

598 : array {
599 global $DIC;
600
601
602 $operation = ilOrgUnitOperationQueries::findByOperationString($org_unit_operation_string, $context);
603 assert($operation instanceof ilOrgUnitOperation);
604
605 $tmp_table_name = 'tmp_ilobj_user_matrix_' . $operation->getOperationId();
606
608 $user_id,
609 $org_unit_operation_string,
610 $context,
611 $tmp_table_name
612 );
613
614 $q = 'SELECT * FROM ' . $tmp_table_name;
615
616 $user_set = $DIC->database()->query($q);
617
618 $arr_user_obj = array();
619
620 while ($rec = $DIC->database()->fetchAssoc($user_set)) {
621 $arr_user_obj[] = $rec;
622 }
623
624 return $arr_user_obj;
625 }
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)

◆ getInstance()

static ILIAS\MyStaff\ilMyStaffAccess::getInstance ( )
static

Definition at line 52 of file class.ilMyStaffAccess.php.

52 : self
53 {
54 global $DIC;
55
56 if (self::$instance === null) {
57 self::$instance = new self();
58
59 if (!self::isMyStaffActive()) {
60 return self::$instance;
61 }
62
63 self::$instance->dropTempTable(self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS . "_" . self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION . "_"
64 . self::COURSE_CONTEXT);
65 self::$instance->dropTempTable(self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS . "_" . self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION
66 . "_" . self::COURSE_CONTEXT);
67 self::$instance->dropTempTable(self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS . "_" . self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION
68 . "_" . self::COURSE_CONTEXT);
69 self::$instance->dropTempTable(self::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS . "_user_id_" . $DIC->user()->getId());
70 self::$instance->dropTempTable(self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS . "_user_id_" . $DIC->user()->getId());
71 self::$instance->dropTempTable(self::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX . "_" . self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION . "_"
72 . self::COURSE_CONTEXT);
73 }
74
75 return self::$instance;
76 }

References $DIC, and ILIAS\MyStaff\ilMyStaffAccess\$instance.

Referenced by ILIAS\MyStaff\ListCertificates\ilMStListCertificatesTableGUI\__construct(), ILIAS\MyStaff\ListCompetences\Skills\ilMStListCompetencesSkillsTableGUI\__construct(), ILIAS\MyStaff\ListUsers\ilMStListUsersTableGUI\__construct(), ILIAS\User\Settings\StartingPoint\Repository\__construct(), ILIAS\MyStaff\ListCourses\ilMStListCourses\getData(), ILIAS\MyStaff\ListCertificates\ilMStListCertificates\getData(), ILIAS\EmployeeTalk\Provider\MyStaffListEntryProvider\getStaticSubItems(), and ILIAS\MyStaff\Provider\StaffMainBarProvider\getStaticSubItems().

+ Here is the caller graph for this function:

◆ getUsersForUser()

ILIAS\MyStaff\ilMyStaffAccess::getUsersForUser ( int  $user_id,
?int  $position_id = null 
)
Returns
int[]

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 423 of file class.ilMyStaffAccess.php.

423 : array
424 {
425 global $DIC;
426
427 if (isset($this->users_for_user[$user_id]) && $position_id === null) {
428 return $this->users_for_user[$user_id];
429 }
430
431 $tmp_orgu_members = $this->buildTempTableOrguMemberships(
432 self::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS,
433 array()
434 );
435
436 $position_limitation = '';
437 if (!is_null($position_id)) {
438 $position_limitation = ' AND orgu_ua_current_user.position_id = ' . $position_id;
439 }
440
441 $q = "SELECT " . $tmp_orgu_members . ".user_id AS usr_id
442 FROM
443 " . $tmp_orgu_members . "
444 INNER JOIN il_orgu_ua AS orgu_ua_current_user on orgu_ua_current_user.user_id = " . $DIC->database()->quote(
445 $user_id,
446 'integer'
447 ) . "
448 INNER JOIN il_orgu_authority AS auth ON auth.position_id = orgu_ua_current_user.position_id " . $position_limitation . "
449 WHERE
450 (
451 /* Identische OrgUnit wie Current User; Nicht Rekursiv; Fixe Position */
452 (orgu_ua_current_user.orgu_id = " . $tmp_orgu_members . ".orgu_id AND auth.scope = 1
453 AND auth.over = " . $tmp_orgu_members . ".user_position_id AND auth.over <> -1
454 )
455 OR
456 /* Identische OrgUnit wie Current User; Nicht Rekursiv; Position egal */
457 (orgu_ua_current_user.orgu_id = " . $tmp_orgu_members . ".orgu_id AND auth.scope = 1 AND auth.over = -1)
458 OR
459 /* Kinder OrgUnit wie Current User */
460 (
461 (
462 " . $tmp_orgu_members . ".orgu_id = orgu_ua_current_user.orgu_id OR
463 " . $tmp_orgu_members . ".tree_path LIKE CONCAT(\"%.\",orgu_ua_current_user.orgu_id ,\".%\")
464 OR
465 " . $tmp_orgu_members . ".tree_path LIKE CONCAT(\"%.\",orgu_ua_current_user.orgu_id )
466 )
467 AND
468 (
469 (
470 (
471 /* Gleiche Position */
472 auth.over = " . $tmp_orgu_members . ".user_position_id AND auth.over <> -1
473 )
474 OR
475 (
476 /* Position Egal */
477 auth.over = -1
478 )
479 )
480 AND auth.scope = 2
481 )
482 )
483 )";
484
485 $user_set = $DIC->database()->query($q);
486
487 $arr_users = array();
488
489 while ($rec = $DIC->database()->fetchAssoc($user_set)) {
490 $arr_users[$rec['usr_id']] = $rec['usr_id'];
491 }
492
493 if ($position_id === null) {
494 $this->users_for_user[$user_id] = $arr_users;
495 }
496
497 return $arr_users;
498 }

References $DIC, $q, and $user_id.

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToUser().

+ Here is the caller graph for this function:

◆ getUsersForUserOperationAndContext()

ILIAS\MyStaff\ilMyStaffAccess::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 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 378 of file class.ilMyStaffAccess.php.

383 : array {
384 global $DIC;
385
387 $user_id,
388 $org_unit_operation_string,
389 $context,
390 $tmp_table_name_prefix
391 );
392
393 $q = 'SELECT usr_id FROM ' . $tmp_table_name;
394
395 $user_set = $DIC->database()->query($q);
396
397 $arr_users = array();
398
399 while ($rec = $DIC->database()->fetchAssoc($user_set)) {
400 $arr_users[$rec['usr_id']] = $rec['usr_id'];
401 }
402
403 return $arr_users;
404 }

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToCourseLearningProgressForAtLeastOneUser().

+ Here is the caller graph for this function:

◆ getUsersForUserPerPosition()

ILIAS\MyStaff\ilMyStaffAccess::getUsersForUserPerPosition ( int  $user_id)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 406 of file class.ilMyStaffAccess.php.

406 : array
407 {
408 $users = [];
409 $user_assignments = ilOrgUnitUserAssignmentQueries::getInstance()->getAssignmentsOfUserId($user_id);
410 foreach ($user_assignments as $user_assignment) {
411 $users[$user_assignment->getPositionId()] = $this->getUsersForUser(
412 $user_id,
413 $user_assignment->getPositionId()
414 );
415 }
416
417 return $users;
418 }

References $user_id, and ilOrgUnitUserAssignmentQueries\getInstance().

+ Here is the call graph for this function:

◆ hasCurrentUserAccessToCertificates()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToCertificates ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 120 of file class.ilMyStaffAccess.php.

120 : bool
121 {
122 global $DIC;
123
124 if (!self::isMyStaffActive()) {
125 return false;
126 }
127
128 $cert_set = new \ilSetting("certificate");
129 if (!$cert_set->get("active")) {
130 return false;
131 }
132
133 if ($this->countOrgusOfUserWithOperationAndContext(
134 $DIC->user()->getId(),
136 self::COURSE_CONTEXT
137 )
138 > 0
139 ) {
140 return true;
141 }
142
143 if ($this->countOrgusOfUserWithOperationAndContext(
144 $DIC->user()->getId(),
146 self::EXERCISE_CONTEXT
147 )
148 > 0
149 ) {
150 return true;
151 }
152
153 if ($this->countOrgusOfUserWithOperationAndContext(
154 $DIC->user()->getId(),
156 self::TEST_CONTEXT
157 )
158 > 0
159 ) {
160 return true;
161 }
162
163 return false;
164 }

References $DIC, and ilOrgUnitOperation\OP_VIEW_CERTIFICATES.

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToMyStaff().

+ Here is the caller graph for this function:

◆ hasCurrentUserAccessToCompetences()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToCompetences ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 207 of file class.ilMyStaffAccess.php.

207 : bool
208 {
209 global $DIC;
210
211 if (!self::isMyStaffActive()) {
212 return false;
213 }
214
215 $skmg_set = new \ilSkillManagementSettings();
216 if (!$skmg_set->isActivated()) {
217 return false;
218 }
219
220 if ($this->countOrgusOfUserWithOperationAndContext(
221 $DIC->user()->getId(),
223 self::COURSE_CONTEXT
224 )
225 > 0
226 ) {
227 return true;
228 }
229
230 if ($this->countOrgusOfUserWithOperationAndContext(
231 $DIC->user()->getId(),
233 self::GROUP_CONTEXT
234 )
235 > 0
236 ) {
237 return true;
238 }
239
240 if ($this->countOrgusOfUserWithOperationAndContext(
241 $DIC->user()->getId(),
243 self::SURVEY_CONTEXT
244 )
245 > 0
246 ) {
247 return true;
248 }
249
250 if ($this->countOrgusOfUserWithOperationAndContext(
251 $DIC->user()->getId(),
253 self::TEST_CONTEXT
254 )
255 > 0
256 ) {
257 return true;
258 }
259
260 return false;
261 }

References $DIC, and ilOrgUnitOperation\OP_VIEW_COMPETENCES.

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToMyStaff().

+ Here is the caller graph for this function:

◆ hasCurrentUserAccessToCourseLearningProgressForAtLeastOneUser()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToCourseLearningProgressForAtLeastOneUser ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 316 of file class.ilMyStaffAccess.php.

316 : bool
317 {
318 global $DIC;
319
320 $arr_usr_id = $this->getUsersForUserOperationAndContext(
321 $DIC->user()->getId(),
323 self::COURSE_CONTEXT
324 );
325 if (count($arr_usr_id) > 0) {
326 return true;
327 }
328
329 return false;
330 }
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)

References $DIC, ILIAS\MyStaff\ilMyStaffAccess\getUsersForUserOperationAndContext(), and ilOrgUnitOperation\OP_READ_LEARNING_PROGRESS.

+ Here is the call graph for this function:

◆ hasCurrentUserAccessToCourseMemberships()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToCourseMemberships ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 263 of file class.ilMyStaffAccess.php.

263 : bool
264 {
265 global $DIC;
266
267 if (!self::isMyStaffActive()) {
268 return false;
269 }
270
271 if ($this->countOrgusOfUserWithOperationAndContext(
272 $DIC->user()->getId(),
273 self::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION,
274 self::COURSE_CONTEXT
275 )
276 > 0
277 ) {
278 return true;
279 }
280
281 return false;
282 }

References $DIC.

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToMyStaff().

+ Here is the caller graph for this function:

◆ hasCurrentUserAccessToLearningProgressInObject()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToLearningProgressInObject ( int  $ref_id = 0)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 309 of file class.ilMyStaffAccess.php.

309 : bool
310 {
311 global $DIC;
312
313 return $DIC->access()->checkPositionAccess(ilOrgUnitOperation::OP_READ_LEARNING_PROGRESS, $ref_id);
314 }
$ref_id
Definition: ltiauth.php:66

References $DIC, $ref_id, and ilOrgUnitOperation\OP_READ_LEARNING_PROGRESS.

◆ hasCurrentUserAccessToMyStaff()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToMyStaff ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 89 of file class.ilMyStaffAccess.php.

89 : bool
90 {
91 global $DIC;
92
93 if (!self::isMyStaffActive()) {
94 return false;
95 }
96
98 return true;
99 }
100
102 return true;
103 }
104
106 return true;
107 }
108
109 if ($this->hasCurrentUserAccessToTalks()) {
110 return true;
111 }
112
113 if ($this->hasCurrentUserAccessToStaffList()) {
114 return true;
115 }
116
117 return false;
118 }

References $DIC, ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToCertificates(), ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToCompetences(), ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToCourseMemberships(), ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToStaffList(), and ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToTalks().

+ Here is the call graph for this function:

◆ hasCurrentUserAccessToStaffList()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToStaffList ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 284 of file class.ilMyStaffAccess.php.

284 : bool
285 {
286 return $this->hasCurrentUserAccessToUser(0);
287 }

References ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToUser().

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToMyStaff().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasCurrentUserAccessToTalks()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToTalks ( )

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 166 of file class.ilMyStaffAccess.php.

166 : bool
167 {
168 global $DIC;
169
170 if (!self::isMyStaffActive()) {
171 return false;
172 }
173
174 if ($this->countOrgusOfUserWithOperationAndContext(
175 $DIC->user()->getId(),
177 self::EMPLOYEE_TALK_CONTEXT
178 )
179 > 0
180 ) {
181 return true;
182 }
183
184 if ($this->countOrgusOfUserWithOperationAndContext(
185 $DIC->user()->getId(),
187 self::EMPLOYEE_TALK_CONTEXT
188 )
189 > 0
190 ) {
191 return true;
192 }
193
194 if ($this->countOrgusOfUserWithOperationAndContext(
195 $DIC->user()->getId(),
197 self::EMPLOYEE_TALK_CONTEXT
198 )
199 > 0
200 ) {
201 return true;
202 }
203
204 return false;
205 }

References $DIC, ilOrgUnitOperation\OP_CREATE_EMPLOYEE_TALK, ilOrgUnitOperation\OP_EDIT_EMPLOYEE_TALK, and ilOrgUnitOperation\OP_READ_EMPLOYEE_TALK.

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToMyStaff().

+ Here is the caller graph for this function:

◆ hasCurrentUserAccessToUser()

ILIAS\MyStaff\ilMyStaffAccess::hasCurrentUserAccessToUser ( int  $usr_id)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 289 of file class.ilMyStaffAccess.php.

289 : bool
290 {
291 global $DIC;
292
293 if (!self::isMyStaffActive()) {
294 return false;
295 }
296
297 $arr_users = $this->getUsersForUser($DIC->user()->getId());
298 if (count($arr_users) > 0 && $usr_id === 0) {
299 return true;
300 }
301
302 if (count($arr_users) > 0 && in_array($usr_id, $arr_users)) {
303 return true;
304 }
305
306 return false;
307 }

References $DIC, and ILIAS\MyStaff\ilMyStaffAccess\getUsersForUser().

Referenced by ILIAS\MyStaff\ilMyStaffAccess\hasCurrentUserAccessToStaffList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hasPositionDefaultPermissionForOperationInContext()

ILIAS\MyStaff\ilMyStaffAccess::hasPositionDefaultPermissionForOperationInContext ( int  $position_id,
int  $operation_id,
int  $context_id 
)

Reimplemented in ILIAS\MyStaff\ilMyStaffCachedAccessDecorator.

Definition at line 579 of file class.ilMyStaffAccess.php.

583 : bool {
584 global $DIC;
585 $res = $DIC->database()->query("SELECT * FROM il_orgu_permissions " .
586 " WHERE context_id = " . $context_id . " " .
587 "AND operations REGEXP '[\\\[,]\"?" . $operation_id . "\"?[\],]' " .
588 "AND position_id = " . $position_id . " " .
589 "AND parent_id = -1");
590
591 return (bool) $DIC->database()->numRows($res) > 0;
592 }
$res
Definition: ltiservices.php:69

◆ isMyStaffActive()

static ILIAS\MyStaff\ilMyStaffAccess::isMyStaffActive ( )
static

Definition at line 82 of file class.ilMyStaffAccess.php.

82 : bool
83 {
84 global $DIC;
85
86 return (bool) $DIC->settings()->get('enable_my_staff');
87 }

References $DIC.

Referenced by ILIAS\MyStaff\Provider\StaffMainBarProvider\getStaticSubItems().

+ Here is the caller graph for this function:

Field Documentation

◆ $instance

self ILIAS\MyStaff\ilMyStaffAccess::$instance = null
staticprotected

Definition at line 48 of file class.ilMyStaffAccess.php.

Referenced by ILIAS\MyStaff\ilMyStaffAccess\getInstance().

◆ $users_for_user

array ILIAS\MyStaff\ilMyStaffAccess::$users_for_user = []
protected

Definition at line 50 of file class.ilMyStaffAccess.php.

◆ ACCESS_ENROLMENTS_ORG_UNIT_OPERATION

const string ILIAS\MyStaff\ilMyStaffAccess::ACCESS_ENROLMENTS_ORG_UNIT_OPERATION = ilOrgUnitOperation::OP_ACCESS_ENROLMENTS

◆ COURSE_CONTEXT

const string ILIAS\MyStaff\ilMyStaffAccess::COURSE_CONTEXT = ilOrgUnitOperationContext::CONTEXT_CRS

◆ EMPLOYEE_TALK_CONTEXT

const string ILIAS\MyStaff\ilMyStaffAccess::EMPLOYEE_TALK_CONTEXT = ilOrgUnitOperationContext::CONTEXT_ETAL

Definition at line 46 of file class.ilMyStaffAccess.php.

◆ EXERCISE_CONTEXT

const string ILIAS\MyStaff\ilMyStaffAccess::EXERCISE_CONTEXT = ilOrgUnitOperationContext::CONTEXT_EXC

Definition at line 42 of file class.ilMyStaffAccess.php.

◆ GROUP_CONTEXT

const string ILIAS\MyStaff\ilMyStaffAccess::GROUP_CONTEXT = ilOrgUnitOperationContext::CONTEXT_GRP

Definition at line 43 of file class.ilMyStaffAccess.php.

◆ SURVEY_CONTEXT

const string ILIAS\MyStaff\ilMyStaffAccess::SURVEY_CONTEXT = ilOrgUnitOperationContext::CONTEXT_SVY

Definition at line 44 of file class.ilMyStaffAccess.php.

◆ TEST_CONTEXT

const string ILIAS\MyStaff\ilMyStaffAccess::TEST_CONTEXT = ilOrgUnitOperationContext::CONTEXT_TST

Definition at line 45 of file class.ilMyStaffAccess.php.

◆ TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS

const string ILIAS\MyStaff\ilMyStaffAccess::TMP_DEFAULT_TABLE_NAME_PREFIX_CRS_MEMBERS = 'tmp_crs_members'

Definition at line 37 of file class.ilMyStaffAccess.php.

◆ TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS

const string ILIAS\MyStaff\ilMyStaffAccess::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_DEFAULT_PERMISSIONS = 'tmp_obj_def_perm'

Definition at line 35 of file class.ilMyStaffAccess.php.

◆ TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS

const string ILIAS\MyStaff\ilMyStaffAccess::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_SPEC_PERMISSIONS = 'tmp_obj_spec_perm'

Definition at line 34 of file class.ilMyStaffAccess.php.

◆ TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX

const string ILIAS\MyStaff\ilMyStaffAccess::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_OBJ_USER_MATRIX = 'tmp_obj_user_matr'

Definition at line 39 of file class.ilMyStaffAccess.php.

◆ TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS

const string ILIAS\MyStaff\ilMyStaffAccess::TMP_DEFAULT_TABLE_NAME_PREFIX_IL_ORGU_DEFAULT_PERMISSIONS = 'tmp_orgu_def_perm'

Definition at line 36 of file class.ilMyStaffAccess.php.

◆ TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS

const string ILIAS\MyStaff\ilMyStaffAccess::TMP_DEFAULT_TABLE_NAME_PREFIX_ORGU_MEMBERS = 'tmp_orgu_members'

Definition at line 38 of file class.ilMyStaffAccess.php.


The documentation for this class was generated from the following file: