Go to the documentation of this file.00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 include_once("classes/class.ilObjectAccess.php");
00025
00034 class ilObjiLincCourseAccess extends ilObjectAccess
00035 {
00048 function _checkAccess($a_cmd, $a_permission, $a_ref_id, $a_obj_id, $a_user_id = "")
00049 {
00050 global $ilUser, $lng, $rbacsystem, $ilAccess, $ilias;
00051
00052 if ($a_user_id == "")
00053 {
00054 $a_user_id = $ilUser->getId();
00055 }
00056
00057 switch ($a_cmd)
00058 {
00059 case "info":
00060 include_once 'ilinc/classes/class.ilObjiLincCourse.php';
00061
00062 if(ilObjiLincCourse::_isMember($a_user_id,$a_obj_id))
00063 {
00064 $ilAccess->addInfoItem(IL_STATUS_MESSAGE, $lng->txt("info_is_member"));
00065 }
00066 else
00067 {
00068 $ilAccess->addInfoItem(IL_STATUS_MESSAGE, $lng->txt("info_is_not_member"));
00069 }
00070 break;
00071
00072 case 'join':
00073 include_once 'ilinc/classes/class.ilObjiLincCourse.php';
00074
00075 if(ilObjiLincCourse::_isMember($a_user_id,$a_ref_id))
00076 {
00077 return false;
00078 }
00079 break;
00080 }
00081
00082 switch ($a_permission)
00083 {
00084 case "visible":
00085 include_once 'ilinc/classes/class.ilObjiLincCourse.php';
00086
00087 if(!($activated = ilObjiLincCourse::_isActivated($a_obj_id)))
00088 {
00089 $ilAccess->addInfoItem(IL_NO_OBJECT_ACCESS, $lng->txt("offline"));
00090 }
00091 else
00092 {
00093 $ilAccess->addInfoItem(IL_STATUS_MESSAGE, $lng->txt("online"));
00094 }
00095
00096 if (!$ilias->getSetting("ilinc_active"))
00097 {
00098 $ilAccess->addInfoItem(IL_STATUS_MESSAGE, $lng->txt("ilinc_server_not_active"));
00099 }
00100
00101 if(!$rbacsystem->checkAccessOfUser($a_user_id,'write',$a_ref_id) and !$activated)
00102 {
00103 return false;
00104 }
00105 break;
00106 }
00107
00108 return true;
00109 }
00110
00123 function _getCommands()
00124 {
00125 $commands = array
00126 (
00127 array("permission" => "read", "cmd" => "view", "lang_var" => "view_rooms",
00128 "default" => true),
00129 array("permission" => "join", "cmd" => "join", "lang_var" => "join"),
00130 array("permission" => "write", "cmd" => "edit", "lang_var" => "edit")
00131 );
00132
00133 return $commands;
00134 }
00135 }
00136
00137 ?>