コード例 #1
0
/**
 * @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");
}
コード例 #2
0
/**
 * @return Sabre_CalDAV_AnimexxCalendarRootNode
 */
function dav_createRootCalendarNode()
{
    $backends = array(Sabre_CalDAV_Backend_Private::getInstance());
    foreach ($GLOBALS["CALDAV_PRIVATE_SYSTEM_BACKENDS"] as $backendclass) {
        $backends[] = $backendclass::getInstance();
    }
    return new Sabre_CalDAV_AnimexxCalendarRootNode(Sabre_DAVACL_PrincipalBackend_Std::getInstance(), $backends);
}