aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorTobia De Koninck <tobia@ledfan.be>2017-09-16 13:42:46 +0200
committerMorris Jobke <hey@morrisjobke.de>2017-12-11 18:18:58 +0100
commitf6ef779f97c2abf0543184e58dd27b39aa0ea3bc (patch)
treed730368e486868726fc6a7df068c8c34a11d75c3 /apps
parent45971879f525f146c225e1e7f6078ae241f32495 (diff)
downloadnextcloud-server-f6ef779f97c2abf0543184e58dd27b39aa0ea3bc.tar.gz
nextcloud-server-f6ef779f97c2abf0543184e58dd27b39aa0ea3bc.zip
Make ContactsStore a public API
Signed-off-by: Tobia De Koninck <tobia@ledfan.be>
Diffstat (limited to 'apps')
-rw-r--r--apps/dav/appinfo/app.php2
-rw-r--r--apps/dav/lib/AppInfo/Application.php10
-rw-r--r--apps/dav/lib/CardDAV/ContactsManager.php8
3 files changed, 20 insertions, 0 deletions
diff --git a/apps/dav/appinfo/app.php b/apps/dav/appinfo/app.php
index 8a534a75970..4f4fbe6e126 100644
--- a/apps/dav/appinfo/app.php
+++ b/apps/dav/appinfo/app.php
@@ -53,6 +53,8 @@ $cm->register(function() use ($cm, $app) {
$user = \OC::$server->getUserSession()->getUser();
if (!is_null($user)) {
$app->setupContactsProvider($cm, $user->getUID());
+ } else {
+ $app->setupSystemContactsProvider($cm);
}
});
diff --git a/apps/dav/lib/AppInfo/Application.php b/apps/dav/lib/AppInfo/Application.php
index b38f38044f3..a5571286354 100644
--- a/apps/dav/lib/AppInfo/Application.php
+++ b/apps/dav/lib/AppInfo/Application.php
@@ -76,6 +76,16 @@ class Application extends App {
}
/**
+ * @param IManager $contactsManager
+ */
+ public function setupSystemContactsProvider(IContactsManager $contactsManager) {
+ /** @var ContactsManager $cm */
+ $cm = $this->getContainer()->query(ContactsManager::class);
+ $urlGenerator = $this->getContainer()->getServer()->getURLGenerator();
+ $cm->setupSystemContactsProvider($contactsManager, $urlGenerator);
+ }
+
+ /**
* @param ICalendarManager $calendarManager
* @param string $userId
*/
diff --git a/apps/dav/lib/CardDAV/ContactsManager.php b/apps/dav/lib/CardDAV/ContactsManager.php
index ad02d4ba427..67e3ef2c72c 100644
--- a/apps/dav/lib/CardDAV/ContactsManager.php
+++ b/apps/dav/lib/CardDAV/ContactsManager.php
@@ -55,6 +55,14 @@ class ContactsManager {
public function setupContactsProvider(IManager $cm, $userId, IURLGenerator $urlGenerator) {
$addressBooks = $this->backend->getAddressBooksForUser("principals/users/$userId");
$this->register($cm, $addressBooks, $urlGenerator);
+ $this->setupSystemContactsProvider($cm, $urlGenerator);
+ }
+
+ /**
+ * @param IManager $cm
+ * @param IURLGenerator $urlGenerator
+ */
+ public function setupSystemContactsProvider(IManager $cm, IURLGenerator $urlGenerator) {
$addressBooks = $this->backend->getAddressBooksForUser("principals/system/system");
$this->register($cm, $addressBooks, $urlGenerator);
}