ILIAS  Release_5_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilObjectAccess Class Reference

Class ilObjectAccess. More...

+ Inheritance diagram for ilObjectAccess:
+ Collaboration diagram for ilObjectAccess:

Public Member Functions

 _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)
 _checkCondition ($a_obj_id, $a_operator, $a_value, $a_usr_id)
 check condition
 _getCommands ()
 get commands
 _checkGoto ($a_target)
 check whether goto script will succeed
 _preloadData ($a_obj_ids, $a_ref_ids)
 Preload data.

Static Public Member Functions

static _isOffline ($a_obj_id)
 Type-specific implementation of general status, has to be overwritten.

Detailed Description

Class ilObjectAccess.

This class contains methods that check object specific conditions for access to objects. Every object type should provide an inherited class called ilObj<TypeName>Access

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
Id:
class.ilObjectAccess.php 53454 2014-09-16 15:34:51Z smeyer

Definition at line 16 of file class.ilObjectAccess.php.

Member Function Documentation

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)

Please do not check any preconditions handled by ilConditionHandler here. Also don't do any RBAC checks.

Parameters
string$a_cmdcommand (not permission!)
string$a_permissionpermission
int$a_ref_idreference id
int$a_obj_idobject id
int$a_user_iduser id (if not provided, current user is taken)
Returns
boolean true, if everything is ok

Reimplemented in ilObjSurveyAccess, ilObjLinkResourceAccess, ilObjChatroomAccess, ilObjSAHSLearningModuleAccess, ilObjDataCollectionAccess, ilObjSessionAccess, ilObjBibliographicAccess, ilObjCourseAccess, ilObjBookingPoolAccess, ilObjMediaCastAccess, ilObjWikiAccess, ilObjCourseReferenceAccess, ilObjiLincClassroomAccess, ilObjRemoteCourseAccess, ilObjRemoteGlossaryAccess, ilObjRemoteGroupAccess, ilObjRemoteLearningModuleAccess, ilObjRemoteTestAccess, ilObjRemoteWikiAccess, ilContainerReferenceAccess, ilObjItemGroupAccess, ilObjectPluginAccess, ilObjiLincCourseAccess, ilObjCloudAccess, ilObjPrivacySecurityAccess, ilObjTestAccess, ilObjContentObjectAccess, ilObjFileBasedLMAccess, ilObjGlossaryAccess, ilObjGroupAccess, ilObjPollAccess, ilObjPortfolioTemplateAccess, and ilObjUserAccess.

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

References $ilUser.

{
global $ilUser, $ilAccess;
if ($a_user_id == "")
{
$a_user_id = $ilUser->getId();
}
// add no access info item and return false if access is not granted
// $ilAccess->addInfoItem(IL_NO_OBJECT_ACCESS, $a_text, $a_data = "");
//
// for all RBAC checks use checkAccessOfUser instead the normal checkAccess-method:
// $rbacsystem->checkAccessOfUser($a_user_id, $a_permission, $a_ref_id)
return true;
}
ilObjectAccess::_checkCondition (   $a_obj_id,
  $a_operator,
  $a_value,
  $a_usr_id 
)

check condition

this method is called by ilConditionHandler

Reimplemented in ilObjectPluginAccess.

Definition at line 56 of file class.ilObjectAccess.php.

{
switch($a_operator)
{
default:
return true;
}
}
ilObjectAccess::_getCommands ( )

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 in ilObjTestAccess, ilObjCourseAccess, ilObjSurveyAccess, ilObjiLincCourseAccess, ilObjGroupAccess, ilObjiLincClassroomAccess, ilObjRemoteCourseAccess, ilObjRemoteGroupAccess, ilObjRemoteTestAccess, ilObjRemoteGlossaryAccess, ilObjRemoteLearningModuleAccess, ilObjRemoteWikiAccess, ilObjPollAccess, ilObjectPluginAccess, ilObjFileBasedLMAccess, ilObjExerciseAccess, ilObjGlossaryAccess, ilObjLearningModuleAccess, ilObjSurveyQuestionPoolAccess, ilObjDlBookAccess, ilObjRemoteCategoryAccess, ilObjRemoteFileAccess, ilObjRootFolderAccess, ilObjSessionAccess, ilObjFolderAccess, ilObjFileAccess, ilObjWorkspaceFolderAccess, ilObjForumAccess, ilObjLinkResourceAccess, ilObjBookingPoolAccess, ilObjChatroomAdminAccess, ilObjExternalFeedAccess, ilObjCategoryAccess, ilObjMediaCastAccess, ilObjMediaPoolAccess, ilObjChatroomAccess, ilObjDataCollectionAccess, ilObjQuestionPoolAccess, ilObjWikiAccess, ilObjExerciseVerificationAccess, ilObjWorkspaceRootFolderAccess, ilObjBlogAccess, ilObjCourseVerificationAccess, ilObjSCORMVerificationAccess, ilObjTestVerificationAccess, ilObjBibliographicAccess, ilObjOrgUnitAccess, ilObjNotificationAdminAccess, ilObjItemGroupAccess, ilObjCloudAccess, ilObjUserAccess, and ilObjPortfolioTemplateAccess.

Definition at line 77 of file class.ilObjectAccess.php.

Referenced by ilObjCategoryReferenceAccess\_getCommands(), ilObjCourseReferenceAccess\_getCommands(), ilObjectListGUI\init(), ilObjSAHSLearningModuleListGUI\initItem(), ilObjCourseReferenceListGUI\initItem(), and ilObjCategoryReferenceListGUI\initItem().

{
$commands = array
(
array()
);
return $commands;
}

+ Here is the caller graph for this function:

static ilObjectAccess::_isOffline (   $a_obj_id)
static

Type-specific implementation of general status, has to be overwritten.

Used in ListGUI and Learning Progress

Parameters
int$a_obj_id
Returns
bool

Reimplemented in ilObjTestAccess, ilObjCourseAccess, ilObjSAHSLearningModuleAccess, ilObjContentObjectAccess, and ilObjFileBasedLMAccess.

Definition at line 111 of file class.ilObjectAccess.php.

{
return null;
}
ilObjectAccess::_preloadData (   $a_obj_ids,
  $a_ref_ids 
)

Preload data.

Parameters
array$a_obj_idsarray of object ids

Reimplemented in ilObjCourseAccess, ilObjFileAccess, ilObjContentObjectAccess, ilObjGroupAccess, ilObjFileBasedLMAccess, ilObjForumAccess, and ilObjLinkResourceAccess.

Definition at line 121 of file class.ilObjectAccess.php.

{
}

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