summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorJakob Sack <mail@jakobsack.de>2012-03-02 20:25:20 +0100
committerJakob Sack <mail@jakobsack.de>2012-03-02 20:25:20 +0100
commit503e5cada3656a6d9ac519921f4c8bf2614d47bb (patch)
tree7c80dbe5946ad1bbfe4507eeccf2ebb058e4b91f /apps
parent48fe85d9bd7fc6a82f54d23befe06c2457b590bc (diff)
downloadnextcloud-server-503e5cada3656a6d9ac519921f4c8bf2614d47bb.tar.gz
nextcloud-server-503e5cada3656a6d9ac519921f4c8bf2614d47bb.zip
Add /dav.php, a single location bundling all *DAV-operations.
Diffstat (limited to 'apps')
-rw-r--r--apps/calendar/appinfo/app.php5
-rw-r--r--apps/calendar/lib/hooks.php15
-rw-r--r--apps/contacts/appinfo/app.php1
-rw-r--r--apps/contacts/lib/hooks.php12
4 files changed, 30 insertions, 3 deletions
diff --git a/apps/calendar/appinfo/app.php b/apps/calendar/appinfo/app.php
index 174bc009e45..0968737219a 100644
--- a/apps/calendar/appinfo/app.php
+++ b/apps/calendar/appinfo/app.php
@@ -8,12 +8,13 @@ if(version_compare(PHP_VERSION, '5.3.0', '>=')){
OC::$CLASSPATH['OC_Connector_Sabre_CalDAV'] = 'apps/calendar/lib/connector_sabre.php';
OC::$CLASSPATH['OC_Search_Provider_Calendar'] = 'apps/calendar/lib/search.php';
OC_HOOK::connect('OC_User', 'post_deleteUser', 'OC_Calendar_Hooks', 'deleteUser');
+ OC_Hook::connect('OC_DAV', 'initialize', 'OC_Calendar_Hooks', 'initializeCalDAV');
OC_Util::addScript('calendar','loader');
- OC_App::register( array(
+ OC_App::register( array(
'order' => 10,
'id' => 'calendar',
'name' => 'Calendar' ));
- OC_App::addNavigationEntry( array(
+ OC_App::addNavigationEntry( array(
'id' => 'calendar_index',
'order' => 10,
'href' => OC_Helper::linkTo( 'calendar', 'index.php' ),
diff --git a/apps/calendar/lib/hooks.php b/apps/calendar/lib/hooks.php
index 14f96bb5fe1..54f1680a36e 100644
--- a/apps/calendar/lib/hooks.php
+++ b/apps/calendar/lib/hooks.php
@@ -17,11 +17,24 @@ class OC_Calendar_Hooks{
*/
public static function deleteUser($parameters) {
$calendars = OC_Calendar_Calendar::allCalendars($parameters['uid']);
-
+
foreach($calendars as $calendar) {
OC_Calendar_Calendar::deleteCalendar($calendar['id']);
}
return true;
}
+
+ /**
+ * @brief Adds the CardDAV resource to the DAV server
+ * @param paramters parameters from initialize-Hook
+ * @return array
+ */
+ public static function initializeCalDAV($parameters){
+ // We need a backend, the root node and the caldav plugin
+ $parameters['backends']['caldav'] = new OC_Connector_Sabre_CalDAV();
+ $parameters['nodes'][] = new Sabre_CalDAV_CalendarRootNode($parameters['backends']['principal'], $parameters['backends']['caldav']);
+ $parameters['plugins'][] = new Sabre_CalDAV_Plugin();
+ return true;
+ }
}
diff --git a/apps/contacts/appinfo/app.php b/apps/contacts/appinfo/app.php
index 63833dd5cd6..85c383c4c32 100644
--- a/apps/contacts/appinfo/app.php
+++ b/apps/contacts/appinfo/app.php
@@ -8,6 +8,7 @@ OC::$CLASSPATH['OC_Search_Provider_Contacts'] = 'apps/contacts/lib/search.php';
OC_HOOK::connect('OC_User', 'post_deleteUser', 'OC_Contacts_Hooks', 'deleteUser');
OC_HOOK::connect('OC_Calendar', 'getEvents', 'OC_Contacts_Hooks', 'getBirthdayEvents');
OC_HOOK::connect('OC_Calendar', 'getSources', 'OC_Contacts_Hooks', 'getCalenderSources');
+OC_Hook::connect('OC_DAV', 'initialize', 'OC_Contacts_Hooks', 'initializeCardDAV');
OC_App::register( array(
'order' => 10,
diff --git a/apps/contacts/lib/hooks.php b/apps/contacts/lib/hooks.php
index b858c4a5a48..2fe4afe716b 100644
--- a/apps/contacts/lib/hooks.php
+++ b/apps/contacts/lib/hooks.php
@@ -39,6 +39,18 @@ class OC_Contacts_Hooks{
return true;
}
+ /**
+ * @brief Adds the CardDAV resource to the DAV server
+ * @param paramters parameters from initialize-Hook
+ * @return array
+ */
+ static public function initializeCardDAV($parameters){
+ // We need a backend, the root node and the carddav plugin
+ $parameters['backends']['carddav'] = new OC_Connector_Sabre_CardDAV();
+ $parameters['nodes'][] = new Sabre_CardDAV_AddressBookRoot($parameters['backends']['principal'], $parameters['backends']['carddav']);
+ $parameters['plugins'][] = new Sabre_CardDAV_Plugin();
+ return true;
+
static public function getCalenderSources($parameters) {
$base_url = OC_Helper::linkTo('calendar', 'ajax/events.php').'?calendar_id=';
foreach(OC_Contacts_Addressbook::all(OC_User::getUser()) as $addressbook) {