aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMurtaza Sultani <sultani@data-quest.de>2024-07-10 15:53:59 +0000
committerJan-Hendrik Willms <tleilax+github@gmail.com>2024-07-11 07:54:13 +0200
commitb9e1c072f8cc151e9d87dea04cc27145dd29201b (patch)
tree02633df34b815427f50741f1d6d3908aa4099050
parent794928aaf731e39ea6ddcb897fa65b9b8b574f8b (diff)
Resolve "Methode "Folder::findTopFolder()" prüft nicht auf Typ "RootFolder""
Closes #4008 Merge request studip/studip!3198
-rw-r--r--lib/filesystem/FileManager.php4
-rw-r--r--lib/models/Folder.php9
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;