ILIAS  release_8 Revision v8.23
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)
 

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.

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

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  }
global $DIC
Definition: feed.php:28
+ 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)

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

References ilObjRemoteCourse\_lookupOnline(), ilAccessInfo\IL_NO_OBJECT_ACCESS, ILIAS\Repository\lng(), and ILIAS\Repository\logger().

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  }
$ref_id
Definition: ltiauth.php:67
static _lookupOnline($a_obj_id)
Lookup online.
+ 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"), );

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

Referenced by ilObjRemoteCourseListGUI\init().

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  }
+ 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: