diff options
| author | Murtaza Sultani <sultani@data-quest.de> | 2024-07-10 15:53:59 +0000 |
|---|---|---|
| committer | Jan-Hendrik Willms <tleilax+github@gmail.com> | 2024-07-11 07:54:13 +0200 |
| commit | b9e1c072f8cc151e9d87dea04cc27145dd29201b (patch) | |
| tree | 02633df34b815427f50741f1d6d3908aa4099050 | |
| parent | 794928aaf731e39ea6ddcb897fa65b9b8b574f8b (diff) | |
Resolve "Methode "Folder::findTopFolder()" prüft nicht auf Typ "RootFolder""
Closes #4008
Merge request studip/studip!3198
| -rw-r--r-- | lib/filesystem/FileManager.php | 4 | ||||
| -rw-r--r-- | lib/models/Folder.php | 9 |
2 files changed, 7 insertions, 6 deletions
diff --git a/lib/filesystem/FileManager.php b/lib/filesystem/FileManager.php index f18d3ff..9ac5ad2 100644 --- a/lib/filesystem/FileManager.php +++ b/lib/filesystem/FileManager.php @@ -1637,7 +1637,7 @@ class FileManager */ public static function getInboxFolder(User $user) { - $top_folder = Folder::findTopFolder($user->id, 'user'); + $top_folder = Folder::findTopFolder($user->id); if (!$top_folder) { return null; } @@ -1680,7 +1680,7 @@ class FileManager */ public static function getOutboxFolder(User $user) { - $top_folder = Folder::findTopFolder($user->id, 'user'); + $top_folder = Folder::findTopFolder($user->id); if (!$top_folder) { return null; } diff --git a/lib/models/Folder.php b/lib/models/Folder.php index fcf4d98..9018151 100644 --- a/lib/models/Folder.php +++ b/lib/models/Folder.php @@ -339,14 +339,15 @@ 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) * * @returns Folder|null Folder object on success or null, if no folder can be created. **/ - public static function findTopFolder($range_id) + public static function findTopFolder($range_id, $folder_type = 'RootFolder') { $top_folder = self::findOneBySQL( - "range_id = ? AND parent_id=''", - [$range_id] + "range_id = ? AND folder_type = ? AND parent_id=''", + [$range_id, $folder_type] ); //top_folder may not exist! @@ -359,7 +360,7 @@ class Folder extends SimpleORMap implements FeedbackRange return null; } - $top_folder = self::createTopFolder($range_id, $range_type); + $top_folder = self::createTopFolder($range_id, $range_type, $folder_type); } return $top_folder; |
