summaryrefslogtreecommitdiffstats
path: root/apps/contacts/ajax
diff options
context:
space:
mode:
authorThomas Tanghus <thomas@tanghus.net>2012-03-09 13:56:20 +0100
committerThomas Tanghus <thomas@tanghus.net>2012-03-09 13:56:20 +0100
commit2582fe1c8914ae4fd04bb40b29e15fbc6f308a78 (patch)
tree5ba631c485d86a3ec720ae26fe7dbfd6130f5366 /apps/contacts/ajax
parent98bf8cfeb60a2ae32df48f318cc62655c852b2e7 (diff)
downloadnextcloud-server-2582fe1c8914ae4fd04bb40b29e15fbc6f308a78.tar.gz
nextcloud-server-2582fe1c8914ae4fd04bb40b29e15fbc6f308a78.zip
Yet a missing file :-P
Diffstat (limited to 'apps/contacts/ajax')
-rw-r--r--apps/contacts/ajax/categories/rescan.php49
1 files changed, 49 insertions, 0 deletions
diff --git a/apps/contacts/ajax/categories/rescan.php b/apps/contacts/ajax/categories/rescan.php
new file mode 100644
index 00000000000..dd27192baa0
--- /dev/null
+++ b/apps/contacts/ajax/categories/rescan.php
@@ -0,0 +1,49 @@
+<?php
+/**
+ * Copyright (c) 2012 Thomas Tanghus <thomas@tanghus.net>
+ * This file is licensed under the Affero General Public License version 3 or
+ * later.
+ * See the COPYING-README file.
+ */
+
+require_once('../../../../lib/base.php');
+OC_JSON::checkLoggedIn();
+OC_JSON::checkAppEnabled('contacts');
+
+foreach ($_POST as $key=>$element) {
+ debug('_POST: '.$key.'=>'.print_r($element, true));
+}
+
+function bailOut($msg) {
+ OC_JSON::error(array('data' => array('message' => $msg)));
+ OC_Log::write('contacts','ajax/categories/rescan.php: '.$msg, OC_Log::DEBUG);
+ exit();
+}
+function debug($msg) {
+ OC_Log::write('contacts','ajax/categories/rescan.php: '.$msg, OC_Log::DEBUG);
+}
+
+$addressbooks = OC_Contacts_Addressbook::all(OC_User::getUser());
+if(count($addressbooks) == 0) {
+ bailOut(OC_Contacts_App::$l10n->t('No address books found.'));
+}
+$addressbookids = array();
+foreach($addressbooks as $addressbook) {
+ $addressbookids[] = $addressbook['id'];
+}
+$contacts = OC_Contacts_VCard::all($addressbookids);
+if(count($contacts) == 0) {
+ bailOut(OC_Contacts_App::$l10n->t('No contacts found.'));
+}
+
+$cards = array();
+foreach($contacts as $contact) {
+ $cards[] = $contact['carddata'];
+}
+
+OC_Contacts_App::$categories->rescan($cards);
+$categories = OC_Contacts_App::$categories->categories();
+
+OC_JSON::success(array('data' => array('categories'=>$categories)));
+
+?>