/** * @see Tinebase_WebDav_Collection_AbstractContainerTree::getChild() * @param string $name * @return Tinebase_WebDav_Container_Abstract|Tinebase_WebDav_Collection_AbstractContainerTree|Tinebase_Frontend_WebDAV_RecordCollection */ public function getChild($name) { if (count($this->_getPathParts()) === 2 && $name == Addressbook_Frontend_CardDAV_AllContacts::NAME) { return new Addressbook_Frontend_CardDAV_AllContacts(Tinebase_Core::getUser()); } return parent::getChild($name); }
/** * (non-PHPdoc) * @see Tinebase_WebDav_Collection_AbstractContainerTree::getChild() */ public function getChild($name) { // do this only for caldav requests if ($this->_useIdAsName && count($this->_getPathParts()) == 2 && in_array($name, array('inbox', 'outbox', 'dropbox'))) { switch ($name) { case 'inbox': return new Calendar_Frontend_CalDAV_ScheduleInbox(Tinebase_Core::getUser()); break; case 'outbox': return new \Sabre\CalDAV\Schedule\Outbox('principals/users/' . Tinebase_Core::getUser()->contact_id); break; case 'dropbox': return new Calendar_Frontend_CalDAV_Dropbox(Tinebase_Core::getUser()); break; } } return parent::getChild($name); }