ILIAS  trunk Revision v11.0_alpha-1811-gd2d5443e411
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
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 31 of file class.ilObjRemoteCourseAccess.php.

Constructor & Destructor Documentation

◆ __construct()

ilObjRemoteCourseAccess::__construct ( )

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

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

40  {
41  global $DIC;
42 
43  $this->logger = $DIC->logger()->rcrs();
44  $this->ilAccess = $DIC->access();
45  $this->ilUser = $DIC->user();
46  $this->lng = $DIC->language();
47  $this->rbacsystem = $DIC->rbac()->system();
48  }
global $DIC
Definition: shib_login.php:22
+ 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 53 of file class.ilObjRemoteCourseAccess.php.

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

53  : bool
54  {
55  $this->logger->debug('>' . $cmd . '< >' . $permission . '< >' . $ref_id . '< >' . $obj_id . '< >' . $user_id . '<');
56  if (is_null($user_id)) {
57  $user_id = $this->ilUser->getId();
58  }
59 
60  switch ($permission) {
61  case "visible":
62  $active = ilObjRemoteCourse::_lookupOnline($obj_id);
63  $tutor = $this->rbacsystem->checkAccessOfUser($user_id, 'write', $ref_id);
64 
65  if (!$active) {
66  $this->ilAccess->addInfoItem(ilAccessInfo::IL_NO_OBJECT_ACCESS, $this->lng->txt("offline"));
67  }
68  if (!$tutor and !$active) {
69  return false;
70  }
71  break;
72 
73  case 'read':
74  $tutor = $this->rbacsystem->checkAccessOfUser($user_id, 'write', $ref_id);
75  if ($tutor) {
76  return true;
77  }
78  $active = ilObjRemoteCourse::_lookupOnline($obj_id);
79 
80  if (!$active) {
81  $this->ilAccess->addInfoItem(ilAccessInfo::IL_NO_OBJECT_ACCESS, $this->lng->txt("offline"));
82  return false;
83  }
84  break;
85  }
86  return true;
87  }
$ref_id
Definition: ltiauth.php:65
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 102 of file class.ilObjRemoteCourseAccess.php.

Referenced by ilObjRemoteCourseListGUI\init().

102  : array
103  {
104  $commands = array(
105  array("permission" => "read", "cmd" => "show", "lang_var" => "info",
106  "default" => true),
107  array("permission" => "write", "cmd" => "edit", "lang_var" => "edit")
108  );
109 
110  return $commands;
111  }
+ Here is the caller graph for this function:

Field Documentation

◆ $ilAccess

ilAccessHandler ilObjRemoteCourseAccess::$ilAccess
private

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

◆ $ilUser

ilObjUser ilObjRemoteCourseAccess::$ilUser
private

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

◆ $lng

ilLanguage ilObjRemoteCourseAccess::$lng
private

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

◆ $logger

ilLogger ilObjRemoteCourseAccess::$logger
private

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

◆ $rbacsystem

ilRbacSystem ilObjRemoteCourseAccess::$rbacsystem
private

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


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