nextcloud/apps/calendar/appinfo/remote.php

44 lines
1.4 KiB
PHP
Raw Normal View History

2011-08-11 13:22:07 +04:00
<?php
/**
2011-09-24 00:59:24 +04:00
* Copyright (c) 2011 Jakob Sack <mail@jakobsack.de>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
2011-08-11 13:22:07 +04:00
*/
2012-05-02 21:08:37 +04:00
OCP\App::checkAppEnabled('calendar');
2011-08-11 13:22:07 +04:00
if(substr($_SERVER["REQUEST_URI"],0,strlen(OC_App::getAppWebPath('calendar').'/caldav.php')) == OC_App::getAppWebPath('calendar'). '/caldav.php'){
$baseuri = OC_App::getAppWebPath('calendar').'/caldav.php';
}
// only need authentication apps
$RUNTIME_APPTYPES=array('authentication');
OC_App::loadApps($RUNTIME_APPTYPES);
2011-08-11 13:22:07 +04:00
// Backends
$authBackend = new OC_Connector_Sabre_Auth();
$principalBackend = new OC_Connector_Sabre_Principal();
$caldavBackend = new OC_Connector_Sabre_CalDAV();
// Root nodes
$collection = new Sabre_CalDAV_Principal_Collection($principalBackend);
$collection->disableListing = true; // Disable listening
$nodes = array(
$collection,
2011-08-11 13:22:07 +04:00
new Sabre_CalDAV_CalendarRootNode($principalBackend, $caldavBackend),
);
2011-08-11 13:22:07 +04:00
// Fire up server
$server = new Sabre_DAV_Server($nodes);
2012-05-06 00:54:14 +04:00
$server->setBaseUri($baseuri);
2011-08-11 13:22:07 +04:00
// Add plugins
$server->addPlugin(new Sabre_DAV_Auth_Plugin($authBackend,'ownCloud'));
$server->addPlugin(new Sabre_CalDAV_Plugin());
$server->addPlugin(new Sabre_DAVACL_Plugin());
$server->addPlugin(new Sabre_DAV_Browser_Plugin(false)); // Show something in the Browser, but no upload
$server->addPlugin(new Sabre_CalDAV_ICSExportPlugin());
2011-08-11 13:22:07 +04:00
// And off we go!
$server->exec();