diff options
| author | Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> | 2025-10-16 11:49:38 +0200 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+studip@gmail.com> | 2025-10-16 14:38:39 +0200 |
| commit | 9a815c1f667caa96f98479c17736b43a08b716fc (patch) | |
| tree | 103196f61c1a9e8fe33e9afb3a0a65ae621ec7de /lib | |
| parent | 4c32e27052af03745debad7500764aa2aa8f6520 (diff) | |
remove broken reimplementation of findTopFolder(), fixes #5944
Closes #5944
Merge request studip/studip!4545
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/classes/JsonApi/Routes/Courseware/StructuralElementsImageUpload.php | 4 | ||||
| -rw-r--r-- | lib/models/Courseware/Filesystem/PublicFolder.php | 25 | ||||
| -rw-r--r-- | lib/models/Courseware/StructuralElement.php | 4 |
3 files changed, 4 insertions, 29 deletions
diff --git a/lib/classes/JsonApi/Routes/Courseware/StructuralElementsImageUpload.php b/lib/classes/JsonApi/Routes/Courseware/StructuralElementsImageUpload.php index aaca497..860252b 100644 --- a/lib/classes/JsonApi/Routes/Courseware/StructuralElementsImageUpload.php +++ b/lib/classes/JsonApi/Routes/Courseware/StructuralElementsImageUpload.php @@ -29,9 +29,9 @@ class StructuralElementsImageUpload extends NonJsonApiController } $instance = $this->findInstanceWithRange($structuralElement['range_type'], $structuralElement['range_id']); - $publicFolder = PublicFolder::findOrCreateTopFolder($instance); + $publicFolder = \Folder::findTopFolder($instance->getRoot()->id, PublicFolder::class, 'courseware'); - $fileRef = $this->handleUpload($request, $publicFolder, $structuralElement); + $fileRef = $this->handleUpload($request, $publicFolder->getTypedFolder(), $structuralElement); // remove existing image if (is_a($structuralElement->image, \FileRef::class)) { diff --git a/lib/models/Courseware/Filesystem/PublicFolder.php b/lib/models/Courseware/Filesystem/PublicFolder.php index 271c929..0c1fa3e 100644 --- a/lib/models/Courseware/Filesystem/PublicFolder.php +++ b/lib/models/Courseware/Filesystem/PublicFolder.php @@ -2,8 +2,6 @@ namespace Courseware\Filesystem; -use Courseware\Instance; -use FileType; use Folder; use FolderType; use Icon; @@ -11,29 +9,6 @@ use StandardFolder; class PublicFolder extends StandardFolder { - public static function findOrCreateTopFolder(Instance $instance): PublicFolder - { - if (!($folder = self::findTopFolder($instance))) { - $folder = self::createTopFolder($instance); - } - - return $folder; - } - - public static function findTopFolder(Instance $instance): ?PublicFolder - { - if ($folder = Folder::findOneByrange_id($instance->getRoot()->id)) { - return new PublicFolder($folder); - } - - return null; - } - - public static function createTopFolder(Instance $instance): PublicFolder - { - return new PublicFolder(Folder::createTopFolder($instance->getRoot()->id, 'courseware', PublicFolder::class)); - } - protected $folder; /** diff --git a/lib/models/Courseware/StructuralElement.php b/lib/models/Courseware/StructuralElement.php index c589816..2a9c69a 100644 --- a/lib/models/Courseware/StructuralElement.php +++ b/lib/models/Courseware/StructuralElement.php @@ -940,9 +940,9 @@ SQL; $original_file_ref = \FileRef::find($this->image_id); if ($original_file_ref) { $instance = new Instance($this->getCourseware($parent->range_id, $parent->range_type)); - $folder = \Courseware\Filesystem\PublicFolder::findOrCreateTopFolder($instance); + $folder = \Folder::findTopFolder($instance->getRoot()->id, PublicFolder::class, 'courseware'); /** @var \FileRef $file_ref */ - $file_ref = \FileManager::copyFile($original_file_ref->getFileType(), $folder, $user); + $file_ref = \FileManager::copyFile($original_file_ref->getFileType(), $folder->getTypedFolder(), $user); $file_ref_id = $file_ref->id; } |
