19 declare(strict_types=1);
32 if (is_null(self::$folderSettings)) {
33 self::$folderSettings =
new ilSetting(
'fold');
35 return self::$folderSettings;
40 if ($cmd ===
"download" &&
41 !self::hasDownloadAction($ref_id)) {
50 $commands[] = [
"permission" =>
"read",
"cmd" =>
"view",
"lang_var" =>
"show",
"default" =>
true];
55 $commands[] = [
"permission" =>
"read",
"cmd" =>
"download",
"lang_var" =>
"download"];
59 $commands[] = $webdav_obj->retrieveWebDAVCommandArrayForActionMenu();
61 $commands[] = [
"permission" =>
"write",
"cmd" =>
"enableAdministrationPanel",
"lang_var" =>
"edit_content"];
62 $commands[] = [
"permission" =>
"write",
"cmd" =>
"edit",
"lang_var" =>
"settings"];
70 $settings = self::getFolderSettings();
71 if ((
int) $settings->get(
"enable_download_folder",
'0') !== 1) {
81 $ilAccess = $DIC->access();
83 $t_arr = explode(
"_", $target);
85 if ($t_arr[0] !==
"fold" || ((
int) $t_arr[1]) <= 0) {
89 if ($ilAccess->checkAccess(
"read",
"", (
int) $t_arr[1]) ||
90 $ilAccess->checkAccess(
"visible",
"", (
int) $t_arr[1])) {
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
static getFolderSettings()
_checkAccess(string $cmd, string $permission, int $ref_id, int $obj_id, ?int $user_id=null)
static _checkGoto(string $target)
static ilSetting $folderSettings
static hasDownloadAction(int $ref_id)