diff options
author | Jakob Sack <mail@jakobsack.de> | 2012-03-02 20:25:20 +0100 |
---|---|---|
committer | Jakob Sack <mail@jakobsack.de> | 2012-03-02 20:25:20 +0100 |
commit | 503e5cada3656a6d9ac519921f4c8bf2614d47bb (patch) | |
tree | 7c80dbe5946ad1bbfe4507eeccf2ebb058e4b91f /apps | |
parent | 48fe85d9bd7fc6a82f54d23befe06c2457b590bc (diff) | |
download | nextcloud-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.php | 5 | ||||
-rw-r--r-- | apps/calendar/lib/hooks.php | 15 | ||||
-rw-r--r-- | apps/contacts/appinfo/app.php | 1 | ||||
-rw-r--r-- | apps/contacts/lib/hooks.php | 12 |
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) { |