diff options
author | Daniel Lange <DLange@git.local> | 2016-03-07 15:53:16 +0100 |
---|---|---|
committer | Daniel Lange <DLange@git.local> | 2016-03-07 15:53:16 +0100 |
commit | 50569114acdc64e7c7cae1498635d3f821517c30 (patch) | |
tree | 13d6fe76af33134fbfb2286930fb6603047f9299 /calendar/lib/SabreDAV/lib/OldSabre/CalDAV/CalendarRootNode.php | |
parent | c210d30de6c62e7f7867bb32651349ddf455d9e6 (diff) | |
download | roundcube_calendar-50569114acdc64e7c7cae1498635d3f821517c30.tar.gz roundcube_calendar-50569114acdc64e7c7cae1498635d3f821517c30.tar.bz2 roundcube_calendar-50569114acdc64e7c7cae1498635d3f821517c30.zip |
Initial commit of the Faster IT roundcube_calendar plugin distribution
This includes:
* Kolab plugins 3.2.9 (calendar and libcalendaring)
* CalDAV driver 3.2.8
* .htaccess files for at least some security
* SabreDAV updated to 1.8.12 (Jan 2015 release)
* Support for CURLOPT_SSL_* settings to allow self-signed certificates
* Small fixes & improved documentation
Diffstat (limited to 'calendar/lib/SabreDAV/lib/OldSabre/CalDAV/CalendarRootNode.php')
-rw-r--r-- | calendar/lib/SabreDAV/lib/OldSabre/CalDAV/CalendarRootNode.php | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/calendar/lib/SabreDAV/lib/OldSabre/CalDAV/CalendarRootNode.php b/calendar/lib/SabreDAV/lib/OldSabre/CalDAV/CalendarRootNode.php new file mode 100644 index 0000000..810a249 --- /dev/null +++ b/calendar/lib/SabreDAV/lib/OldSabre/CalDAV/CalendarRootNode.php @@ -0,0 +1,77 @@ +<?php + +namespace OldSabre\CalDAV; + +use OldSabre\DAVACL\PrincipalBackend; + +/** + * Calendars collection + * + * This object is responsible for generating a list of calendar-homes for each + * user. + * + * @copyright Copyright (C) 2007-2015 fruux GmbH (https://fruux.com/). + * @author Evert Pot (http://evertpot.com/) + * @license http://sabre.io/license/ Modified BSD License + */ +class CalendarRootNode extends \OldSabre\DAVACL\AbstractPrincipalCollection { + + /** + * CalDAV backend + * + * @var OldSabre\CalDAV\Backend\BackendInterface + */ + protected $caldavBackend; + + /** + * Constructor + * + * This constructor needs both an authentication and a caldav backend. + * + * By default this class will show a list of calendar collections for + * principals in the 'principals' collection. If your main principals are + * actually located in a different path, use the $principalPrefix argument + * to override this. + * + * @param PrincipalBackend\BackendInterface $principalBackend + * @param Backend\BackendInterface $caldavBackend + * @param string $principalPrefix + */ + public function __construct(PrincipalBackend\BackendInterface $principalBackend,Backend\BackendInterface $caldavBackend, $principalPrefix = 'principals') { + + parent::__construct($principalBackend, $principalPrefix); + $this->caldavBackend = $caldavBackend; + + } + + /** + * Returns the nodename + * + * We're overriding this, because the default will be the 'principalPrefix', + * and we want it to be OldSabre\CalDAV\Plugin::CALENDAR_ROOT + * + * @return string + */ + public function getName() { + + return Plugin::CALENDAR_ROOT; + + } + + /** + * This method returns a node for a principal. + * + * The passed array contains principal information, and is guaranteed to + * at least contain a uri item. Other properties may or may not be + * supplied by the authentication backend. + * + * @param array $principal + * @return \OldSabre\DAV\INode + */ + public function getChildForPrincipal(array $principal) { + + return new UserCalendars($this->caldavBackend, $principal); + + } + +} |