From d77bea9d3575c4b9958c19aed931d7b41c901121 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Willms <tleilax+studip@gmail.com> Date: Fri, 15 Mar 2024 15:30:42 +0000 Subject: [PATCH] fixes #3793 Closes #3793 Merge request studip/studip!2671 --- lib/filesystem/CoursePublicFolder.php | 2 +- lib/filesystem/HiddenFolder.php | 2 +- lib/filesystem/TimedFolder.php | 4 ++-- templates/filesystem/date_folder/edit.php | 2 +- templates/filesystem/timed_folder/description.php | 5 ++--- templates/filesystem/timed_folder/edit.php | 8 ++++---- 6 files changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/filesystem/CoursePublicFolder.php b/lib/filesystem/CoursePublicFolder.php index a86b251744f..463fe19940e 100644 --- a/lib/filesystem/CoursePublicFolder.php +++ b/lib/filesystem/CoursePublicFolder.php @@ -59,7 +59,7 @@ class CoursePublicFolder extends StandardFolder */ public function hasWorldwideAccess() { - return (bool) $this->folderdata['data_content']['worldwide_access']; + return !empty($this->folderdata['data_content']['worldwide_access']); } diff --git a/lib/filesystem/HiddenFolder.php b/lib/filesystem/HiddenFolder.php index 460b8523569..b29f5fb57a7 100644 --- a/lib/filesystem/HiddenFolder.php +++ b/lib/filesystem/HiddenFolder.php @@ -107,7 +107,7 @@ class HiddenFolder extends PermissionEnabledFolder public function __get($attribute) { if ($attribute === 'download_allowed') { - return $this->folderdata['data_content']['download_allowed']; + return !empty($this->folderdata['data_content']['download_allowed']); } return $this->folderdata[$attribute]; } diff --git a/lib/filesystem/TimedFolder.php b/lib/filesystem/TimedFolder.php index f2c66dbf3e1..442c084aa1b 100644 --- a/lib/filesystem/TimedFolder.php +++ b/lib/filesystem/TimedFolder.php @@ -123,8 +123,8 @@ class TimedFolder extends PermissionEnabledFolder $this->folderdata['data_content']['permission'] = $this->permission; } - $this->start_time = intval($this->folderdata['data_content']['start_time']); - $this->end_time = intval($this->folderdata['data_content']['end_time']); + $this->start_time = intval($this->folderdata['data_content']['start_time'] ?? 0); + $this->end_time = intval($this->folderdata['data_content']['end_time'] ?? 0); $this->must_have_perm = 'tutor'; } diff --git a/templates/filesystem/date_folder/edit.php b/templates/filesystem/date_folder/edit.php index d31f592d87c..7618e21cb1f 100644 --- a/templates/filesystem/date_folder/edit.php +++ b/templates/filesystem/date_folder/edit.php @@ -10,7 +10,7 @@ $dates = CourseDate::findByRange_id($folder->range_id); </option> <? endif; ?> <? foreach ($dates as $one_date): ?> - <option <?= @$date->id === $one_date->id ? 'selected' : '' ?> value="<?= htmlReady($one_date->id) ?>"> + <option <?= isset($date) && $date->id === $one_date->id ? 'selected' : '' ?> value="<?= htmlReady($one_date->id) ?>"> <?= htmlReady(CourseDateFolder::formatDate($one_date)) ?> </option> <? endforeach; ?> diff --git a/templates/filesystem/timed_folder/description.php b/templates/filesystem/timed_folder/description.php index 1be92e6ea11..ae5bd9e744c 100644 --- a/templates/filesystem/timed_folder/description.php +++ b/templates/filesystem/timed_folder/description.php @@ -22,12 +22,11 @@ </strong> <br> <? endif ?> -<? if ($folder->data_content['permission'] == 3) : ?> +<? if (isset($folder->data_content['permission']) && $folder->data_content['permission'] == 3): ?> <div> <?= _("Dieser Ordner ist ein Hausaufgabenordner. Es können nur Dateien eingestellt werden.") ?> </div> -<? endif ?> -<? if ($folder->data_content['permission'] == 5) : ?> +<? elseif (isset($folder->data_content['permission']) && $folder->data_content['permission'] == 5): ?> <div> <?= _('Ein Ordner für Materialien, welche nur zum Download zu Verfügung gestellt werden sollen.') ?> </div> diff --git a/templates/filesystem/timed_folder/edit.php b/templates/filesystem/timed_folder/edit.php index 0502fe1b838..d5dc6e37295 100644 --- a/templates/filesystem/timed_folder/edit.php +++ b/templates/filesystem/timed_folder/edit.php @@ -1,7 +1,7 @@ <label> <?= _('Sichtbar ab') ?> <input type="text" name="start_time" id="start_time" data-datetime-picker - value="<?= $folder->data_content['start_time'] ? + value="<?= !empty($folder->data_content['start_time']) ? date('d.m.Y H:i', $folder->data_content['start_time']) : _('unbegrenzt') ?>" placeholder="<?= _('unbegrenzt') ?>"> @@ -9,15 +9,15 @@ <label> <?= _('Sichtbar bis') ?> <input type="text" name="end_time" id="end_time" data-datetime-picker - value="<?= $folder->data_content['end_time'] ? date('d.m.Y H:i', $folder->data_content['end_time']) : + value="<?= !empty($folder->data_content['end_time']) ? date('d.m.Y H:i', $folder->data_content['end_time']) : _('unbegrenzt') ?>" placeholder="<?= _('unbegrenzt') ?>"> </label> <label> - <input name="perm_read" type="checkbox" value="1" <? if ($folder->data_content['permission'] & 4) echo 'checked'; ?>> + <input name="perm_read" type="checkbox" value="1" <? if (isset($folder->data_content['permission']) && $folder->data_content['permission'] & 4) echo 'checked'; ?>> <strong>r</strong> - <?= _('Lesen (Dateien können heruntergeladen werden)') ?> </label> <label> - <input name="perm_write" type="checkbox" value="1" <? if ($folder->data_content['permission'] & 2) echo 'checked'; ?>> + <input name="perm_write" type="checkbox" value="1" <? if (isset($folder->data_content['permission']) && $folder->data_content['permission'] & 2) echo 'checked'; ?>> <strong>w</strong> - <?= _('Schreiben (Dateien können hochgeladen werden)') ?> </label> -- GitLab