summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorChristoph Wurst <ChristophWurst@users.noreply.github.com>2023-05-17 13:13:16 +0200
committerGitHub <noreply@github.com>2023-05-17 13:13:16 +0200
commitb6911ba850f087eccf3e0516df0201eeb5b92d31 (patch)
treeae031823205ab21cf266fe1340bf16360c54d97d /apps
parentb4f562bc2fc2ccffc8dfb6d9486a7c6927b4b5d8 (diff)
parentd0f42b36a19e3c1d24e7955d33d4f796b7690e53 (diff)
downloadnextcloud-server-b6911ba850f087eccf3e0516df0201eeb5b92d31.tar.gz
nextcloud-server-b6911ba850f087eccf3e0516df0201eeb5b92d31.zip
Merge pull request #38249 from nextcloud/fix/read-only-system-addres-book-acls-stable25
[stable25] fix(carddav): Mark system address book as read-only
Diffstat (limited to 'apps')
-rw-r--r--apps/dav/lib/CardDAV/SystemAddressbook.php10
1 files changed, 10 insertions, 0 deletions
diff --git a/apps/dav/lib/CardDAV/SystemAddressbook.php b/apps/dav/lib/CardDAV/SystemAddressbook.php
index 502e353acb3..1c78e03162e 100644
--- a/apps/dav/lib/CardDAV/SystemAddressbook.php
+++ b/apps/dav/lib/CardDAV/SystemAddressbook.php
@@ -30,6 +30,7 @@ namespace OCA\DAV\CardDAV;
use OCP\IConfig;
use OCP\IL10N;
use Sabre\CardDAV\Backend\BackendInterface;
+use function array_filter;
class SystemAddressbook extends AddressBook {
/** @var IConfig */
@@ -50,4 +51,13 @@ class SystemAddressbook extends AddressBook {
return parent::getChildren();
}
+
+ public function getACL() {
+ return array_filter(parent::getACL(), function($acl) {
+ if (in_array($acl['privilege'], ['{DAV:}write', '{DAV:}all'], true)) {
+ return false;
+ }
+ return true;
+ });
+ }
}