From cb1b366baf75da4c578bc534884eefa7f6b4b3d2 Mon Sep 17 00:00:00 2001 From: Ferdinand Thiessen Date: Fri, 2 Aug 2024 14:30:52 +0200 Subject: fix(dav): Ensure share properties are also set on public remote endpoint Signed-off-by: Ferdinand Thiessen --- apps/dav/lib/Storage/PublicShareWrapper.php | 38 +++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 apps/dav/lib/Storage/PublicShareWrapper.php (limited to 'apps/dav/lib/Storage') diff --git a/apps/dav/lib/Storage/PublicShareWrapper.php b/apps/dav/lib/Storage/PublicShareWrapper.php new file mode 100644 index 00000000000..fb24abda9d0 --- /dev/null +++ b/apps/dav/lib/Storage/PublicShareWrapper.php @@ -0,0 +1,38 @@ + $storage, 'share' => $share] + * + * $storage: The storage the permissions mask should be applied on + * $share: The share to use in case no share is found + */ + public function __construct($arguments) { + parent::__construct($arguments); + $this->share = $arguments['share']; + } + + public function getShare(): IShare { + $storage = parent::getWrapperStorage(); + if (method_exists($storage, 'getShare')) { + /** @var \OCA\Files_Sharing\SharedStorage $storage */ + return $storage->getShare(); + } + + return $this->share; + } +} -- cgit v1.2.3