Class ilFileBasedLMAccess. More...
Inheritance diagram for ilObjFileBasedLMAccess:
Collaboration diagram for ilObjFileBasedLMAccess: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) | |
| _getCommands () | |
| get commands | |
| _lookupOnline ($a_id) | |
| check wether learning module is online | |
| _determineStartUrl ($a_id) | |
| check wether learning module is online | |
| _checkGoto ($a_target) | |
| check whether goto script will succeed | |
Class ilFileBasedLMAccess.
Definition at line 35 of file class.ilObjFileBasedLMAccess.php.
| ilObjFileBasedLMAccess::_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)
| string | $a_cmd command (not permission!) | |
| string | $a_permission permission | |
| int | $a_ref_id reference id | |
| int | $a_obj_id object id | |
| int | $a_user_id user id (if not provided, current user is taken) |
Reimplemented from ilObjectAccess.
Definition at line 49 of file class.ilObjFileBasedLMAccess.php.
References $lng, _determineStartUrl(), and _lookupOnline().
{
global $ilUser, $lng, $rbacsystem, $ilAccess;
if ($a_user_id == "")
{
$a_user_id = $ilUser->getId();
}
switch ($a_cmd)
{
case "view":
if ((!ilObjFileBasedLMAccess::_lookupOnline($a_obj_id)
&& !$rbacsystem->checkAccessOfUser($a_user_id,'write',$a_ref_id)) ||
ilObjFileBasedLMAccess::_determineStartUrl($a_obj_id) == "")
{
$ilAccess->addInfoItem(IL_NO_OBJECT_ACCESS, $lng->txt("offline"));
return false;
}
break;
}
switch ($a_permission)
{
case "visible":
if (!ilObjFileBasedLMAccess::_lookupOnline($a_obj_id) &&
(!$rbacsystem->checkAccessOfUser($a_user_id,'write', $a_ref_id)))
{
$ilAccess->addInfoItem(IL_NO_OBJECT_ACCESS, $lng->txt("offline"));
return false;
}
break;
}
return true;
}
Here is the call graph for this function:| ilObjFileBasedLMAccess::_checkGoto | ( | $ | a_target | ) |
check whether goto script will succeed
Reimplemented from ilObjectAccess.
Definition at line 163 of file class.ilObjFileBasedLMAccess.php.
{
global $ilAccess;
$t_arr = explode("_", $a_target);
if ($t_arr[0] != "htlm" || ((int) $t_arr[1]) <= 0)
{
return false;
}
if ($ilAccess->checkAccess("visible", "", $t_arr[1]))
{
return true;
}
return false;
}
| ilObjFileBasedLMAccess::_determineStartUrl | ( | $ | a_id | ) |
check wether learning module is online
Definition at line 133 of file class.ilObjFileBasedLMAccess.php.
References $dir, and ilUtil::getWebspaceDir().
Referenced by _checkAccess(), ilObjFileBasedLMListGUI::getProperties(), ilObjFileBasedLMGUI::properties(), and ilObjFileBasedLMGUI::showLearningModule().
{
global $ilDB;
$q = "SELECT * FROM file_based_lm WHERE id = ".$ilDB->quote($a_id);
$set = $ilDB->query($q);
$rec = $set->fetchRow(DB_FETCHMODE_ASSOC);
$start_file = $rec["startfile"];
$dir = ilUtil::getWebspaceDir()."/lm_data/lm_".$a_id;
if (($start_file != "") &&
(@is_file($dir."/".$start_file)))
{
return "./".$dir."/".$start_file;
}
else if (@is_file($dir."/index.html"))
{
return "./".$dir."/index.html";
}
else if (@is_file($dir."/index.htm"))
{
return "./".$dir."/index.htm";
}
return "";
}
Here is the call graph for this function:
Here is the caller graph for this function:| ilObjFileBasedLMAccess::_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 from ilObjectAccess.
Definition at line 100 of file class.ilObjFileBasedLMAccess.php.
Referenced by ilObjFileBasedLMListGUI::init().
{
$commands = array
(
array("permission" => "read", "cmd" => "view", "lang_var" => "show",
"default" => true),
array("permission" => "write", "cmd" => "edit", "lang_var" => "edit"),
);
return $commands;
}
Here is the caller graph for this function:| ilObjFileBasedLMAccess::_lookupOnline | ( | $ | a_id | ) |
check wether learning module is online
Definition at line 119 of file class.ilObjFileBasedLMAccess.php.
References ilUtil::yn2tf().
Referenced by _checkAccess(), and ilObjFileBasedLMListGUI::getProperties().
{
global $ilDB;
$q = "SELECT * FROM file_based_lm WHERE id = ".$ilDB->quote($a_id);
$set = $ilDB->query($q);
$rec = $set->fetchRow(DB_FETCHMODE_ASSOC);
return ilUtil::yn2tf($rec["online"]);
}
Here is the call graph for this function:
Here is the caller graph for this function:
1.7.1