mirror of
https://github.com/nextcloud/server.git
synced 2026-05-28 04:32:30 -04:00
add in same request
This commit is contained in:
parent
8360222554
commit
17d5dfdeb1
3 changed files with 4 additions and 25 deletions
|
|
@ -1633,26 +1633,9 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
|
|||
|
||||
/**
|
||||
* @param \OCA\DAV\CalDAV\Calendar $calendar
|
||||
* @return boolean
|
||||
* @return mixed
|
||||
*/
|
||||
public function getPublishStatus($calendar) {
|
||||
$query = $this->db->getQueryBuilder();
|
||||
$result = $query->select($query->createFunction('COUNT(*)'))
|
||||
->from('dav_shares')
|
||||
->where($query->expr()->eq('resourceid', $query->createNamedParameter($calendar->getResourceId())))
|
||||
->andWhere($query->expr()->eq('access', $query->createNamedParameter(self::ACCESS_PUBLIC)))
|
||||
->execute();
|
||||
|
||||
$row = $result->fetch();
|
||||
$result->closeCursor();
|
||||
return reset($row) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param \OCA\DAV\CalDAV\Calendar $calendar
|
||||
* @return string
|
||||
*/
|
||||
public function getPublishToken($calendar) {
|
||||
$query = $this->db->getQueryBuilder();
|
||||
$result = $query->select('publicuri')
|
||||
->from('dav_shares')
|
||||
|
|
@ -1662,7 +1645,7 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
|
|||
|
||||
$row = $result->fetch();
|
||||
$result->closeCursor();
|
||||
return reset($row);
|
||||
return $row ? reset($row) : false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -261,16 +261,12 @@ class Calendar extends \Sabre\CalDAV\Calendar implements IShareable {
|
|||
}
|
||||
|
||||
/**
|
||||
* @return boolean $value
|
||||
* @return mixed $value
|
||||
*/
|
||||
function getPublishStatus() {
|
||||
return $this->caldavBackend->getPublishStatus($this);
|
||||
}
|
||||
|
||||
function getPublishToken() {
|
||||
return $this->caldavBackend->getPublishToken($this);
|
||||
}
|
||||
|
||||
private function canWrite() {
|
||||
if (isset($this->calendarInfo['{http://owncloud.org/ns}read-only'])) {
|
||||
return !$this->calendarInfo['{http://owncloud.org/ns}read-only'];
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ class PublishPlugin extends ServerPlugin {
|
|||
$propFind->handle('{'.self::NS_CALENDARSERVER.'}publish-url', function () use ($node) {
|
||||
if ($node->getPublishStatus()) {
|
||||
// We return the publish-url only if the calendar is published.
|
||||
$token = $node->getPublishToken();
|
||||
$token = $node->getPublishStatus();
|
||||
$publishUrl = $this->urlGenerator->getAbsoluteURL($this->server->getBaseUri().'public-calendars/').$token;
|
||||
|
||||
return new Publisher($publishUrl, true);
|
||||
|
|
|
|||
Loading…
Reference in a new issue