From 4fd84e47bf01958058f6e26b5655fa3671e15f67 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 9 Dec 2024 11:33:12 +0100 Subject: [PATCH] fix(calendar): Fix getting the permissions of the user Signed-off-by: Joas Schilling --- apps/dav/lib/CalDAV/CalendarImpl.php | 6 +++++- lib/public/Calendar/ICalendar.php | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/dav/lib/CalDAV/CalendarImpl.php b/apps/dav/lib/CalDAV/CalendarImpl.php index 919b08eefce..b3062f005ee 100644 --- a/apps/dav/lib/CalDAV/CalendarImpl.php +++ b/apps/dav/lib/CalDAV/CalendarImpl.php @@ -110,6 +110,10 @@ class CalendarImpl implements ICreateFromString, IHandleImipMessage { $permissions = $this->calendar->getACL(); $result = 0; foreach ($permissions as $permission) { + if ($this->calendarInfo['principaluri'] !== $permission['principal']) { + continue; + } + switch ($permission['privilege']) { case '{DAV:}read': $result |= Constants::PERMISSION_READ; @@ -133,7 +137,7 @@ class CalendarImpl implements ICreateFromString, IHandleImipMessage { public function isWritable(): bool { return $this->calendar->canWrite(); } - + /** * @since 26.0.0 */ diff --git a/lib/public/Calendar/ICalendar.php b/lib/public/Calendar/ICalendar.php index f29d6f30176..2dfc1ca632f 100644 --- a/lib/public/Calendar/ICalendar.php +++ b/lib/public/Calendar/ICalendar.php @@ -53,7 +53,7 @@ interface ICalendar { public function search(string $pattern, array $searchProperties = [], array $options = [], ?int $limit = null, ?int $offset = null): array; /** - * @return int build up using \OCP\Constants + * @return int build up using {@see \OCP\Constants} * @since 13.0.0 */ public function getPermissions(): int;