Merge pull request #17184 from nextcloud/backport/17174/stable17
[stable17] properly mark birthday calendars as not shareable for now
This commit is contained in:
commit
33509a9834
2 changed files with 9 additions and 2 deletions
|
@ -363,7 +363,11 @@ class Calendar extends \Sabre\CalDAV\Calendar implements IShareable {
|
|||
return $this->caldavBackend->getPublishStatus($this);
|
||||
}
|
||||
|
||||
private function canWrite() {
|
||||
public function canWrite() {
|
||||
if ($this->getName() === BirthdayService::BIRTHDAY_CALENDAR_URI) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (isset($this->calendarInfo['{http://owncloud.org/ns}read-only'])) {
|
||||
return !$this->calendarInfo['{http://owncloud.org/ns}read-only'];
|
||||
}
|
||||
|
|
|
@ -126,7 +126,10 @@ class PublishPlugin extends ServerPlugin {
|
|||
});
|
||||
|
||||
$propFind->handle('{'.self::NS_CALENDARSERVER.'}allowed-sharing-modes', function() use ($node) {
|
||||
return new AllowedSharingModes(!$node->isSubscription(), !$node->isSubscription());
|
||||
$canShare = (!$node->isSubscription() && $node->canWrite());
|
||||
$canPublish = (!$node->isSubscription() && $node->canWrite());
|
||||
|
||||
return new AllowedSharingModes($canShare, $canPublish);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue