ILIAS  release_8 Revision v8.24
ilObjRemoteCourseAccess Class Reference
+ Inheritance diagram for ilObjRemoteCourseAccess:
+ Collaboration diagram for ilObjRemoteCourseAccess:

Public Member Functions

 __construct ()
 
 _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...
 
- 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 _getCommands ()
 get commands More...
 
- 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...
 

Private Attributes

ilLogger $logger
 
ilObjUser $ilUser
 
ilLanguage $lng
 
ilRbacSystem $rbacsystem
 
ilAccessHandler $ilAccess
 

Detailed Description

Author
Stefan Meyer meyer.nosp@m.@lei.nosp@m.fos.c.nosp@m.om
Version
$Id$

Definition at line 30 of file class.ilObjRemoteCourseAccess.php.

Constructor & Destructor Documentation

◆ __construct()

ilObjRemoteCourseAccess::__construct ( )

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

39 {
40 global $DIC;
41
42 $this->logger = $DIC->logger()->rcrs();
43 $this->ilAccess = $DIC->access();
44 $this->ilUser = $DIC->user();
45 $this->lng = $DIC->language();
46 $this->rbacsystem = $DIC->rbac()->system();
47 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
global $DIC
Definition: feed.php:28

References $DIC, ILIAS\Repository\lng(), and ILIAS\Repository\logger().

+ Here is the call graph for this function:

Member Function Documentation

◆ _checkAccess()

ilObjRemoteCourseAccess::_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)

Reimplemented from ilObjectAccess.

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

52 : bool
53 {
54 $this->logger->debug('>' . $cmd . '< >' . $permission . '< >' . $ref_id . '< >' . $obj_id . '< >' . $user_id . '<');
55 if (is_null($user_id)) {
56 $user_id = $this->ilUser->getId();
57 }
58
59 switch ($permission) {
60 case "visible":
61 $active = ilObjRemoteCourse::_lookupOnline($obj_id);
62 $tutor = $this->rbacsystem->checkAccessOfUser($user_id, 'write', $ref_id);
63
64 if (!$active) {
65 $this->ilAccess->addInfoItem(ilAccessInfo::IL_NO_OBJECT_ACCESS, $this->lng->txt("offline"));
66 }
67 if (!$tutor and !$active) {
68 return false;
69 }
70 break;
71
72 case 'read':
73 $tutor = $this->rbacsystem->checkAccessOfUser($user_id, 'write', $ref_id);
74 if ($tutor) {
75 return true;
76 }
77 $active = ilObjRemoteCourse::_lookupOnline($obj_id);
78
79 if (!$active) {
80 $this->ilAccess->addInfoItem(ilAccessInfo::IL_NO_OBJECT_ACCESS, $this->lng->txt("offline"));
81 return false;
82 }
83 break;
84 }
85 return true;
86 }
addInfoItem(string $a_type, string $a_text, string $a_data="")
add an info item to current info object
static _lookupOnline($a_obj_id)
Lookup online.
$ref_id
Definition: ltiauth.php:67

References $ref_id, ilObjRemoteCourse\_lookupOnline(), ilAccess\addInfoItem(), ilAccessInfo\IL_NO_OBJECT_ACCESS, ILIAS\Repository\lng(), and ILIAS\Repository\logger().

+ Here is the call graph for this function:

◆ _getCommands()

static ilObjRemoteCourseAccess::_getCommands ( )
static

get commands

this method returns an array of all possible commands/permission combinations

example: $commands = array ( array("permission" => "read", "cmd" => "view", "lang_var" => "show"), array("permission" => "write", "cmd" => "edit", "lang_var" => "edit"), );

Reimplemented from ilObjectAccess.

Definition at line 101 of file class.ilObjRemoteCourseAccess.php.

101 : array
102 {
103 $commands = array(
104 array("permission" => "read", "cmd" => "show", "lang_var" => "info",
105 "default" => true),
106 array("permission" => "write", "cmd" => "edit", "lang_var" => "edit")
107 );
108
109 return $commands;
110 }

Referenced by ilObjRemoteCourseListGUI\init().

+ Here is the caller graph for this function:

Field Documentation

◆ $ilAccess

ilAccessHandler ilObjRemoteCourseAccess::$ilAccess
private

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

◆ $ilUser

ilObjUser ilObjRemoteCourseAccess::$ilUser
private

Definition at line 33 of file class.ilObjRemoteCourseAccess.php.

◆ $lng

ilLanguage ilObjRemoteCourseAccess::$lng
private

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

◆ $logger

ilLogger ilObjRemoteCourseAccess::$logger
private

Definition at line 32 of file class.ilObjRemoteCourseAccess.php.

◆ $rbacsystem

ilRbacSystem ilObjRemoteCourseAccess::$rbacsystem
private

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


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