diff --git a/lib/models/Folder.php b/lib/models/Folder.php index b73571c133f9c20fd842c151c058d0804a4b3f38..1c7a13ea49a201968e92cfb030b730c7fd3c1f8d 100644 --- a/lib/models/Folder.php +++ b/lib/models/Folder.php @@ -119,6 +119,16 @@ class Folder extends SimpleORMap implements FeedbackRange */ public static function createTopFolder($range_id, $range_type, $folder_type = 'RootFolder') { + $creator_id = User::findCurrent()->id; + + try { + $range = RangeFactory::createRange($range_type, $range_id); + if (!$range->isEditableByUser()) { + $creator_id = ''; + } + } catch (Exception $e) { + } + return self::create([ 'parent_id' => '', 'range_id' => $range_id, @@ -127,7 +137,7 @@ class Folder extends SimpleORMap implements FeedbackRange 'name' => '', 'data_content' => '', 'folder_type' => $folder_type, - 'user_id' => $GLOBALS['user']->id + 'user_id' => $creator_id, ]); }