diff --git a/cache/timer.yaml b/cache/timer.yaml index a29e94a..5b353fb 100644 --- a/cache/timer.yaml +++ b/cache/timer.yaml @@ -1 +1 @@ -licenseupdate: 1747568554 +licenseupdate: 1748376533 diff --git a/system/typemill/Models/Storage.php b/system/typemill/Models/Storage.php index 0dc3bab..881b34c 100644 --- a/system/typemill/Models/Storage.php +++ b/system/typemill/Models/Storage.php @@ -667,20 +667,24 @@ class Storage public function getImageList() { - $thumbs = array_diff(scandir($this->thumbsFolder), array('..', '.')); - $imagelist = array(); + $imagelist = []; - foreach ($thumbs as $key => $name) + if(is_dir($this->thumbsFolder)) { - $imagelist[] = [ - 'name' => $name, - 'timestamp' => filemtime($this->thumbsFolder . $name), - 'src_thumb' => 'media/thumbs/' . $name, - 'src_live' => 'media/live/' . $name, - ]; + $thumbs = array_diff(scandir($this->thumbsFolder), array('..', '.')); + + foreach ($thumbs as $key => $name) + { + $imagelist[] = [ + 'name' => $name, + 'timestamp' => filemtime($this->thumbsFolder . $name), + 'src_thumb' => 'media/thumbs/' . $name, + 'src_live' => 'media/live/' . $name, + ]; + } + + $imagelist = Helpers::array_sort($imagelist, 'timestamp', SORT_DESC); } - - $imagelist = Helpers::array_sort($imagelist, 'timestamp', SORT_DESC); return $imagelist; } @@ -895,24 +899,28 @@ class Storage public function getFileList() { - $files = scandir($this->fileFolder); - $filelist = array(); + $filelist = []; - foreach ($files as $key => $name) + if(is_dir($this->fileFolder)) { - if (!in_array($name, array(".","..","filerestrictions.yaml")) && file_exists($this->fileFolder . $name)) - { - $filelist[] = [ - 'name' => $name, - 'timestamp' => filemtime($this->fileFolder . $name), - 'bytes' => filesize($this->fileFolder . $name), - 'info' => pathinfo($this->fileFolder . $name), - 'url' => 'media/files/' . $name, - ]; - } - } + $files = scandir($this->fileFolder); - $filelist = Helpers::array_sort($filelist, 'timestamp', SORT_DESC); + foreach ($files as $key => $name) + { + if (!in_array($name, array(".","..","filerestrictions.yaml")) && file_exists($this->fileFolder . $name)) + { + $filelist[] = [ + 'name' => $name, + 'timestamp' => filemtime($this->fileFolder . $name), + 'bytes' => filesize($this->fileFolder . $name), + 'info' => pathinfo($this->fileFolder . $name), + 'url' => 'media/files/' . $name, + ]; + } + } + + $filelist = Helpers::array_sort($filelist, 'timestamp', SORT_DESC); + } return $filelist; } diff --git a/system/typemill/author/js/vue-medialib.js b/system/typemill/author/js/vue-medialib.js index 0b4561e..70979db 100644 --- a/system/typemill/author/js/vue-medialib.js +++ b/system/typemill/author/js/vue-medialib.js @@ -603,7 +603,7 @@ const medialib = { { this.deleteFile(media); } - }, + }, loadFiles(filetype) { var fileself = this; @@ -615,7 +615,12 @@ const medialib = { }) .then(function (response) { - fileself.filedata = response.data.files; + fileself.filedata = []; + const files = response.data.files; + if(files && Array.isArray(files)) + { + fileself.filedata = files; + } fileself.showFiles(filetype); }) .catch(function (error) @@ -704,8 +709,13 @@ const medialib = { }) .then(function (response) { - imageself.imagedata = response.data.images; - imageself.showImages() + imageself.imagedata = []; + const images = response.data.images; + if (images && Array.isArray(images)) + { + imageself.imagedata = images; + } + imageself.showImages(); }) .catch(function (error) {