diff options
| author | Jan-Hendrik Willms <tleilax+studip@gmail.com> | 2025-11-17 12:45:36 +0100 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+studip@gmail.com> | 2025-11-17 12:45:36 +0100 |
| commit | 72a65f6b341ccb5ce1bc751bc25c4650aaccddff (patch) | |
| tree | fd24ba6713a52b3ecf627a1082bb6ab705444476 /lib | |
| parent | 28f0c58237583c4627f1bc29bbefee7e52d50140 (diff) | |
transfer changes to Folder::findTopFolder to 5.5 and 5.4, fixes #6055, re #5944
Merge request studip/studip!4611
(cherry picked from commit 19b8ec028626fda40a460cfc6dcb62d8e2d40991)
52933e01 transfer changes to Folder::findTopFolder to 5.5 and 5.4, fixes #6055, re #5944
Co-authored-by: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/models/Folder.php | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/lib/models/Folder.php b/lib/models/Folder.php index 5f22423..38da655 100644 --- a/lib/models/Folder.php +++ b/lib/models/Folder.php @@ -370,12 +370,12 @@ class Folder extends SimpleORMap implements FeedbackRange * * Note that the range_id parameter is mandatory! * - * @param string range_id The ID of the Stud.IP object whose top folder shall be found. - * @param string folder_type The expected folder type related to the Stud.IP object (defaults to RootFolder, use MessageFolder for the top folder of a message) + * @param string $range_id The ID of the Stud.IP object whose top folder shall be found. + * @param string $folder_type The expected folder type related to the Stud.IP object (defaults to RootFolder, use MessageFolder for the top folder of a message) * * @returns Folder|null Folder object on success or null, if no folder can be created. **/ - public static function findTopFolder($range_id, $folder_type = 'RootFolder') + public static function findTopFolder($range_id, $folder_type = 'RootFolder', ?string $range_type = null) { $top_folder = self::findOneBySQL( "range_id = ? AND folder_type = ? AND parent_id=''", @@ -386,10 +386,12 @@ class Folder extends SimpleORMap implements FeedbackRange if (!$top_folder) { //top_folder doest not exist: create it //determine range type: - $range_type = self::findRangeTypeById($range_id); if (!$range_type) { - //no range type means we can't create a folder! - return null; + $range_type = self::findRangeTypeById($range_id); + if (!$range_type) { + //no range type means we can't create a folder! + return null; + } } $top_folder = self::createTopFolder($range_id, $range_type, $folder_type); |
