%PDF- %PDF-
| Direktori : /www/varak.net/mail2.varak.net_old/libraries/afterlogic/DAV/CalDAV/ |
| Current File : /www/varak.net/mail2.varak.net_old/libraries/afterlogic/DAV/CalDAV/UserCalendars.php |
<?php
/*
* Copyright 2004-2014, AfterLogic Corp.
* Licensed under AGPLv3 license or AfterLogic license
* if commercial version of the product was purchased.
* See the LICENSE file for a full license statement.
*/
namespace afterlogic\DAV\CalDAV;
class UserCalendars extends \Sabre\CalDAV\UserCalendars{
/**
* Returns a list of calendars
*
* @return array
*/
public function getChildren() {
$calendars = $this->caldavBackend->getCalendarsForUser($this->principalInfo['uri']);
$objs = array();
foreach($calendars as $calendar) {
if ($this->caldavBackend instanceof \Sabre\CalDAV\Backend\SharingSupport) {
if (isset($calendar['{http://calendarserver.org/ns/}shared-url'])) {
$objs[] = new SharedCalendar($this->caldavBackend, $calendar, $this->principalInfo);
} else {
$objs[] = new \Sabre\CalDAV\ShareableCalendar($this->caldavBackend, $calendar);
}
} else {
$objs[] = new \Sabre\CalDAV\Calendar($this->caldavBackend, $calendar);
}
}
$objs[] = new \Sabre\CalDAV\Schedule\Outbox($this->principalInfo['uri']);
// We're adding a notifications node, if it's supported by the backend.
if ($this->caldavBackend instanceof \Sabre\CalDAV\Backend\NotificationSupport && \CApi::GetConf('labs.dav.caldav.notification', false)) {
$objs[] = new \Sabre\CalDAV\Notifications\Collection($this->caldavBackend, $this->principalInfo['uri']);
}
return $objs;
}
}