From ae6957595bcf16eab840fecb7189257f2a3498d8 Mon Sep 17 00:00:00 2001
From: Moritz Strohm <strohm@data-quest.de>
Date: Thu, 27 Jul 2023 16:52:19 +0200
Subject: [PATCH] fixed moving files inside of a Nextcloud/Owncloud, fixes #5

---
 classes/OwncloudFolder.php | 15 +++++++++++++++
 plugin.manifest            |  2 +-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/classes/OwncloudFolder.php b/classes/OwncloudFolder.php
index e2f8401..ab948e5 100755
--- a/classes/OwncloudFolder.php
+++ b/classes/OwncloudFolder.php
@@ -102,6 +102,9 @@ class OwncloudFolder extends VirtualFolderType {
 
     public function addFile(FileType $file, $user_id = null)
     {
+        if ($file instanceof OwncloudFile) {
+            return $this->copyFile($file->getID());
+        }
         $webdav = $this->getWebDavURL();
 
         if ($this->fileExists($file->getFilename())) {
@@ -562,4 +565,16 @@ class OwncloudFolder extends VirtualFolderType {
     {
         return [];
     }
+
+
+    public function validateUpload(FileType $file, $user_id)
+    {
+        if ($file instanceof OwncloudFile) {
+            //A file in the Nextcloud/Owncloud shall be validated.
+            //That is simple:
+            return true;
+        } else {
+            return parent::validateUpload($file, $user_id);
+        }
+    }
 }
diff --git a/plugin.manifest b/plugin.manifest
index ce5b509..8acca4b 100755
--- a/plugin.manifest
+++ b/plugin.manifest
@@ -1,6 +1,6 @@
 pluginname=OwnCloudPlugin
 pluginclassname=OwnCloudPlugin
-version=2.1.1
+version=2.1.2
 origin=data-quest
 studipMinVersion=5.0
 studipMaxVersion=5.3.99
-- 
GitLab