Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
Disable sharing calendars via link when sharik via link is disabled
This mod disallows sharing calendars via link when `shareapi_allow_links`
is disabled.

Related: nextcloud/calendar#525
Related: nextcloud/calendar#4399
Author-Change-Id: IB#1126264
Signed-off-by: Pawel Boguslawski <[email protected]>
  • Loading branch information
pboguslawski authored and tcitworld committed Jan 20, 2023
commit f9312591081cefe3401191a6a064a10c1659d677
9 changes: 9 additions & 0 deletions apps/dav/lib/CalDAV/CalDavBackend.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
* @copyright Copyright (c) 2016, ownCloud, Inc.
* @copyright Copyright (c) 2018 Georg Ehrke
* @copyright Copyright (c) 2020, leith abdulla (<[email protected]>)
* @copyright Copyright (c) 2022 Informatyka Boguslawski sp. z o.o. sp.k., http://www.ib.pl/
*
* @author Chih-Hsuan Yen <[email protected]>
* @author Christoph Wurst <[email protected]>
Expand Down Expand Up @@ -497,6 +498,10 @@ public function getUsersOwnCalendars($principalUri) {
* @return array
*/
public function getPublicCalendars() {
// Sharing via link must be enabled.
if ($this->config->getAppValue('core', 'shareapi_allow_links', 'yes') === 'no' ) {
return array_values([]);
}
$fields = array_column($this->propertyMap, 0);
$fields[] = 'a.id';
$fields[] = 'a.uri';
Expand Down Expand Up @@ -555,6 +560,10 @@ public function getPublicCalendars() {
* @throws NotFound
*/
public function getPublicCalendar($uri) {
// Sharing via link must be enabled.
if ($this->config->getAppValue('core', 'shareapi_allow_links', 'yes') === 'no' ) {
throw new NotFound('Node with name \'' . $uri . '\' could not be found');
}
$fields = array_column($this->propertyMap, 0);
$fields[] = 'a.id';
$fields[] = 'a.uri';
Expand Down
6 changes: 6 additions & 0 deletions apps/dav/lib/CalDAV/Publishing/PublishPlugin.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<?php
/**
* @copyright Copyright (c) 2016 Thomas Citharel <[email protected]>
* @copyright Copyright (c) 2022 Informatyka Boguslawski sp. z o.o. sp.k., http://www.ib.pl/
*
* @author Christoph Wurst <[email protected]>
* @author Georg Ehrke <[email protected]>
Expand Down Expand Up @@ -205,6 +206,11 @@ public function httpPost(RequestInterface $request, ResponseInterface $response)
}
}

// Sharing via link must be enabled.
if ($this->config->getAppValue('core', 'shareapi_allow_links', 'yes') === 'no') {
return;
}

$node->setPublishStatus(true);

// iCloud sends back the 202, so we will too.
Expand Down