aboutsummaryrefslogtreecommitdiff
path: root/lib/classes/exportdocument/ExportPDF.php
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2024-10-25 06:15:21 +0000
committerJan-Hendrik Willms <tleilax+studip@gmail.com>2024-10-25 06:15:21 +0000
commit2ed3db16c437face7935f151d3859de3254eba3d (patch)
tree66ea56b308ff57187769028060d1a1ad41db0e28 /lib/classes/exportdocument/ExportPDF.php
parentc05865d73955dd94d6866563b79f0fb463dcab0f (diff)
exportpdf no longer breaks when an embedded stud.ip file does not exist, fixes #4765
Closes #4765 Merge request studip/studip!3552
Diffstat (limited to 'lib/classes/exportdocument/ExportPDF.php')
-rw-r--r--lib/classes/exportdocument/ExportPDF.php22
1 files changed, 10 insertions, 12 deletions
diff --git a/lib/classes/exportdocument/ExportPDF.php b/lib/classes/exportdocument/ExportPDF.php
index f676c45..1b2ec77 100644
--- a/lib/classes/exportdocument/ExportPDF.php
+++ b/lib/classes/exportdocument/ExportPDF.php
@@ -319,21 +319,19 @@ class ExportPDF extends TCPDF implements ExportDocument
} catch (Exception $e) {
$convurl = '';
}
- } else if (mb_stripos($url, 'dispatch.php/document/download') !== false) {
- if (preg_match('#([a-f0-9]{32})#', $url, $matches)) {
- $file_ref = FileRef::find($matches[1]);
- $folder = $file_ref->folder->getTypedFolder();
- if($folder->isFileDownloadable($file_ref->id, $GLOBALS['user']->id)) {
- $convurl = $file_ref->file->getPath();
- }
- }
- } else if (mb_stripos($url, 'download') !== false
- || mb_stripos($url, 'sendfile.php') !== false) {
+ } elseif (
+ mb_stripos($url, 'dispatch.php/document/download') !== false
+ || mb_stripos($url, 'download') !== false
+ || mb_stripos($url, 'sendfile.php') !== false
+ ) {
//// get file id
if (preg_match('#([a-f0-9]{32})#', $url, $matches)) {
$file_ref = FileRef::find($matches[1]);
- $folder = $file_ref->folder->getTypedFolder();
- if($folder->isFileDownloadable($file_ref->id, $GLOBALS['user']->id)) {
+ $folder = isset($file_ref->folder) ? $file_ref->folder->getTypedFolder() : null;
+ if (
+ isset($folder)
+ && $folder->isFileDownloadable($file_ref->id, $GLOBALS['user']->id)
+ ) {
$convurl = $file_ref->file->getPath();
} else {
$convurl = Assets::image_path('messagebox/exception.png');