From: Julius Härtl Date: Mon, 24 Feb 2020 14:01:39 +0000 (+0100) Subject: Make sure that the transfer entry is present in the database X-Git-Tag: v18.0.2RC1~19^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=refs%2Fpull%2F19628%2Fhead;p=nextcloud-server.git Make sure that the transfer entry is present in the database Signed-off-by: Julius Härtl --- diff --git a/apps/files/lib/Controller/TransferOwnershipController.php b/apps/files/lib/Controller/TransferOwnershipController.php index 824c8c00518..639e73187ca 100644 --- a/apps/files/lib/Controller/TransferOwnershipController.php +++ b/apps/files/lib/Controller/TransferOwnershipController.php @@ -27,6 +27,7 @@ declare(strict_types=1); namespace OCA\Files\Controller; use OCA\Files\BackgroundJob\TransferOwnership; +use OCA\Files\Db\TransferOwnership as TransferOwnershipEntity; use OCA\Files\Db\TransferOwnershipMapper; use OCP\AppFramework\Db\DoesNotExistException; use OCP\AppFramework\Http; @@ -95,7 +96,7 @@ class TransferOwnershipController extends OCSController { return new DataResponse([], Http::STATUS_BAD_REQUEST); } - $transferOwnership = new \OCA\Files\Db\TransferOwnership(); + $transferOwnership = new TransferOwnershipEntity(); $transferOwnership->setSourceUser($this->userId); $transferOwnership->setTargetUser($recipient); $transferOwnership->setFileId($node->getId()); @@ -132,15 +133,22 @@ class TransferOwnershipController extends OCSController { return new DataResponse([], Http::STATUS_FORBIDDEN); } - $this->jobList->add(TransferOwnership::class, [ - 'id' => $transferOwnership->getId(), - ]); - $notification = $this->notificationManager->createNotification(); $notification->setApp('files') ->setObject('transfer', (string)$id); $this->notificationManager->markProcessed($notification); + $newTransferOwnership = new TransferOwnershipEntity(); + $newTransferOwnership->setNodeName($transferOwnership->getNodeName()); + $newTransferOwnership->setFileId($transferOwnership->getFileId()); + $newTransferOwnership->setSourceUser($transferOwnership->getSourceUser()); + $newTransferOwnership->setTargetUser($transferOwnership->getTargetUser()); + $this->mapper->insert($newTransferOwnership); + + $this->jobList->add(TransferOwnership::class, [ + 'id' => $newTransferOwnership->getId(), + ]); + return new DataResponse([], Http::STATUS_OK); }