diff options
author | Christopher Ng <chrng8@gmail.com> | 2024-11-13 14:43:14 -0800 |
---|---|---|
committer | Christopher Ng <chrng8@gmail.com> | 2024-11-13 14:43:14 -0800 |
commit | 3bd089cec126ccd81d2628e30bceee7458a82789 (patch) | |
tree | 9a8db9f1d3dc3b78f7ac14e8a48ebcba3854dc2c | |
parent | 22e2419b2828c5866a32c9da43cbaa8c8a2898ea (diff) | |
download | nextcloud-server-feat/dav-trashbin-backend.tar.gz nextcloud-server-feat/dav-trashbin-backend.zip |
feat(trashbin): Add backend dav propertyfeat/dav-trashbin-backend
Signed-off-by: Christopher Ng <chrng8@gmail.com>
-rw-r--r-- | apps/files_trashbin/lib/Sabre/TrashbinPlugin.php | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/apps/files_trashbin/lib/Sabre/TrashbinPlugin.php b/apps/files_trashbin/lib/Sabre/TrashbinPlugin.php index b2864e9a1c6..2a2e3a141dc 100644 --- a/apps/files_trashbin/lib/Sabre/TrashbinPlugin.php +++ b/apps/files_trashbin/lib/Sabre/TrashbinPlugin.php @@ -9,6 +9,7 @@ declare(strict_types=1); namespace OCA\Files_Trashbin\Sabre; use OCA\DAV\Connector\Sabre\FilesPlugin; +use OCA\Files_Trashbin\Trash\ITrashItem; use OCP\IPreview; use Sabre\DAV\INode; use Sabre\DAV\PropFind; @@ -24,6 +25,7 @@ class TrashbinPlugin extends ServerPlugin { public const TRASHBIN_TITLE = '{http://nextcloud.org/ns}trashbin-title'; public const TRASHBIN_DELETED_BY_ID = '{http://nextcloud.org/ns}trashbin-deleted-by-id'; public const TRASHBIN_DELETED_BY_DISPLAY_NAME = '{http://nextcloud.org/ns}trashbin-deleted-by-display-name'; + public const TRASHBIN_BACKEND = '{http://nextcloud.org/ns}trashbin-backend'; /** @var Server */ private $server; @@ -104,6 +106,14 @@ class TrashbinPlugin extends ServerPlugin { $propFind->handle(FilesPlugin::MOUNT_TYPE_PROPERTYNAME, function () { return ''; }); + + $propFind->handle(self::TRASHBIN_BACKEND, function () use ($node) { + $fileInfo = $node->getFileInfo(); + if (!($fileInfo instanceof ITrashItem)) { + return ''; + } + return $fileInfo->getTrashBackend()::class; + }); } /** |