fix(CalDAV): set acls for DeletedCalendarObjectsCollection

Signed-off-by: Johannes Merkel <mail@johannesgge.de>
pull/42911/head
Johannes Merkel 5 months ago committed by Christoph Wurst
parent 7053a8e70e
commit dbfe66c978
No known key found for this signature in database
GPG Key ID: CC42AC2A7F0E56D8

@ -31,11 +31,15 @@ use Sabre\DAV\Exception\BadRequest;
use Sabre\DAV\Exception\Forbidden;
use Sabre\DAV\Exception\NotFound;
use Sabre\DAV\Exception\NotImplemented;
use Sabre\DAVACL\ACLTrait;
use Sabre\DAVACL\IACL;
use function array_map;
use function implode;
use function preg_match;
class DeletedCalendarObjectsCollection implements ICalendarObjectContainer {
class DeletedCalendarObjectsCollection implements ICalendarObjectContainer, IACL {
use ACLTrait;
public const NAME = 'objects';
/** @var CalDavBackend */
@ -129,4 +133,23 @@ class DeletedCalendarObjectsCollection implements ICalendarObjectContainer {
[$calendarInfo['id'], 'ics'],
);
}
public function getOwner() {
return $this->principalInfo['uri'];
}
public function getACL(): array {
return [
[
'privilege' => '{DAV:}read',
'principal' => $this->getOwner(),
'protected' => true,
],
[
'privilege' => '{DAV:}unbind',
'principal' => '{DAV:}owner',
'protected' => true,
]
];
}
}

Loading…
Cancel
Save