ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilObjQuestionPoolAccess Class Reference

Class ilObjQuestionPoolAccess. More...

+ Inheritance diagram for ilObjQuestionPoolAccess:
+ Collaboration diagram for ilObjQuestionPoolAccess:

Public Member Functions

 _checkAccess ($a_cmd, $a_permission, $a_ref_id, $a_obj_id, $a_user_id="")
 
- Public Member Functions inherited from ilObjectAccess
 _checkAccess ($a_cmd, $a_permission, $a_ref_id, $a_obj_id, $a_user_id="")
 Checks wether a user may invoke a command or not (this method is called by ilAccessHandler::checkAccess) More...
 
 _checkCondition ($a_obj_id, $a_operator, $a_value, $a_usr_id)
 check condition More...
 

Static Public Member Functions

static _getCommands ()
 get commands More...
 
static isOnline ($a_obj_id)
 returns the objects's ONline status More...
 
- Static Public Member Functions inherited from ilObjectAccess
static _getCommands ()
 get commands More...
 
static _checkGoto ($a_target)
 check whether goto script will succeed More...
 
static _isOffline ($a_obj_id)
 Type-specific implementation of general status, has to be overwritten. More...
 
static _preloadData ($a_obj_ids, $a_ref_ids)
 Preload data. More...
 

Detailed Description

Member Function Documentation

◆ _checkAccess()

ilObjQuestionPoolAccess::_checkAccess (   $a_cmd,
  $a_permission,
  $a_ref_id,
  $a_obj_id,
  $a_user_id = "" 
)
Parameters
string$a_cmd
string$a_permission
int$a_ref_id
int$a_obj_id
string$a_user_id
Returns
bool

Definition at line 53 of file class.ilObjQuestionPoolAccess.php.

References $ilUser, $lng, and IL_NO_OBJECT_ACCESS.

54  {
55  global $lng, $ilAccess;
56 
57  global $ilUser, $lng, $rbacsystem, $ilAccess;
58 
59  if ($a_user_id == "")
60  {
61  $a_user_id = $ilUser->getId();
62  }
63 
64  if( $rbacsystem->checkAccessOfUser($a_user_id, 'write', $a_ref_id) )
65  {
66  return true;
67  }
68 
69  switch ($a_permission)
70  {
71  case 'visible':
72  case 'read':
73  if( !self::isOnline($a_obj_id) )
74  {
75  $ilAccess->addInfoItem(IL_NO_OBJECT_ACCESS, $lng->txt("tst_warning_pool_offline"));
76  return false;
77  }
78  break;
79  }
80 
81  return true;
82  }
const IL_NO_OBJECT_ACCESS
$ilUser
Definition: imgupload.php:18
global $lng
Definition: privfeed.php:17

◆ _getCommands()

static ilObjQuestionPoolAccess::_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 30 of file class.ilObjQuestionPoolAccess.php.

References array.

Referenced by ilObjQuestionPoolListGUI\init().

31  {
32  $commands = array
33  (
34  array("permission" => "write", "cmd" => "questions", "lang_var" => "tst_edit_questions"),
35  array("permission" => "write", "cmd" => "ilObjQuestionPoolSettingsGeneralGUI::showForm", "lang_var" => "settings"),
36  #array("permission" => "write", "cmd" => "questions", "lang_var" => "edit",
37  # "default" => false),
38  array("permission" => "read", "cmd" => "questions", "lang_var" => "edit",
39  "default" => true)
40  );
41 
42  return $commands;
43  }
Create styles array
The data for the language used.
+ Here is the caller graph for this function:

◆ isOnline()

static ilObjQuestionPoolAccess::isOnline (   $a_obj_id)
static

returns the objects's ONline status

Parameters
integer$a_obj_id
Returns
boolean $online

Definition at line 90 of file class.ilObjQuestionPoolAccess.php.

References $ilDB, $query, $res, $row, and array.

91  {
92  global $ilDB;
93 
94  $query = "
95  SELECT COUNT(id_questionpool) cnt
96  FROM qpl_questionpool
97  WHERE obj_fi = %s
98  AND isonline = 1
99  ";
100 
101  $res = $ilDB->queryF( $query, array('integer'), array($a_obj_id) );
102  $row = $ilDB->fetchAssoc($res);
103 
104  return $row['cnt'] > 0;
105  }
Create styles array
The data for the language used.
global $ilDB

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