/** * @param int $namespace * @param int $namespace_id * @param string $uri * @param array $calendar * @return Sabre_CalDAV_Backend_Common * @throws Exception */ function wdcal_calendar_factory($namespace, $namespace_id, $uri, $calendar = null) { switch ($namespace) { case CALDAV_NAMESPACE_PRIVATE: if ($uri == CALDAV_FRIENDICA_MINE || $uri == CALDAV_FRIENDICA_CONTACTS) { return Sabre_CalDAV_Backend_Friendica::getInstance(); } else { return Sabre_CalDAV_Backend_Private::getInstance(); } } throw new Exception("Calendar Namespace not found"); }