summaryrefslogtreecommitdiffstats
path: root/core/ajax
diff options
context:
space:
mode:
authorThomas Tanghus <thomas@tanghus.net>2012-11-13 15:40:46 -0800
committerThomas Tanghus <thomas@tanghus.net>2012-11-13 15:40:46 -0800
commitc353568ea09ef89e82c7b0f35b8d646b9c35005d (patch)
tree0d5247b00f465e5d85ead47fd1532cc20bf5a68e /core/ajax
parent9c36326e4776350b64b9a657feb5fca8a50cefcc (diff)
parentbfb6faa85077ef8f7e56a7e706f57587460a2125 (diff)
downloadnextcloud-server-c353568ea09ef89e82c7b0f35b8d646b9c35005d.tar.gz
nextcloud-server-c353568ea09ef89e82c7b0f35b8d646b9c35005d.zip
Merge pull request #41 from owncloud/vcategories_db
OC_VCategories - this time actually usable ;)
Diffstat (limited to 'core/ajax')
-rw-r--r--core/ajax/vcategories/add.php20
-rw-r--r--core/ajax/vcategories/addToFavorites.php38
-rw-r--r--core/ajax/vcategories/delete.php25
-rw-r--r--core/ajax/vcategories/edit.php14
-rw-r--r--core/ajax/vcategories/favorites.php30
-rw-r--r--core/ajax/vcategories/removeFromFavorites.php38
6 files changed, 140 insertions, 25 deletions
diff --git a/core/ajax/vcategories/add.php b/core/ajax/vcategories/add.php
index 8d31275dbfb..23d00af70ab 100644
--- a/core/ajax/vcategories/add.php
+++ b/core/ajax/vcategories/add.php
@@ -14,23 +14,25 @@ function debug($msg) {
OC_Log::write('core', 'ajax/vcategories/add.php: '.$msg, OC_Log::DEBUG);
}
-OC_JSON::checkLoggedIn();
-$category = isset($_GET['category'])?strip_tags($_GET['category']):null;
-$app = isset($_GET['app'])?$_GET['app']:null;
+OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
-if(is_null($app)) {
- bailOut(OC_Contacts_App::$l10n->t('Application name not provided.'));
-}
+$l = OC_L10N::get('core');
+
+$category = isset($_POST['category']) ? strip_tags($_POST['category']) : null;
+$type = isset($_POST['type']) ? $_POST['type'] : null;
-OC_JSON::checkAppEnabled($app);
+if(is_null($type)) {
+ bailOut($l->t('Category type not provided.'));
+}
if(is_null($category)) {
- bailOut(OC_Contacts_App::$l10n->t('No category to add?'));
+ bailOut($l->t('No category to add?'));
}
debug(print_r($category, true));
-$categories = new OC_VCategories($app);
+$categories = new OC_VCategories($type);
if($categories->hasCategory($category)) {
bailOut(OC_Contacts_App::$l10n->t('This category already exists: '.$category));
} else {
diff --git a/core/ajax/vcategories/addToFavorites.php b/core/ajax/vcategories/addToFavorites.php
new file mode 100644
index 00000000000..52f62d5fc6b
--- /dev/null
+++ b/core/ajax/vcategories/addToFavorites.php
@@ -0,0 +1,38 @@
+<?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.
+ */
+function bailOut($msg) {
+ OC_JSON::error(array('data' => array('message' => $msg)));
+ OC_Log::write('core', 'ajax/vcategories/addToFavorites.php: '.$msg, OC_Log::DEBUG);
+ exit();
+}
+function debug($msg) {
+ OC_Log::write('core', 'ajax/vcategories/addToFavorites.php: '.$msg, OC_Log::DEBUG);
+}
+
+OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
+
+$l = OC_L10N::get('core');
+
+$id = isset($_POST['id']) ? strip_tags($_POST['id']) : null;
+$type = isset($_POST['type']) ? $_POST['type'] : null;
+
+if(is_null($type)) {
+ bailOut($l->t('Object type not provided.'));
+}
+
+if(is_null($id)) {
+ bailOut($l->t('%s ID not provided.', $type));
+}
+
+$categories = new OC_VCategories($type);
+if(!$categories->addToFavorites($id, $type)) {
+ bailOut($l->t('Error adding %s to favorites.', $id));
+}
+
+OC_JSON::success();
diff --git a/core/ajax/vcategories/delete.php b/core/ajax/vcategories/delete.php
index 74b0220870c..dfec3785743 100644
--- a/core/ajax/vcategories/delete.php
+++ b/core/ajax/vcategories/delete.php
@@ -15,21 +15,26 @@ function debug($msg) {
OC_Log::write('core', 'ajax/vcategories/delete.php: '.$msg, OC_Log::DEBUG);
}
-OC_JSON::checkLoggedIn();
-$app = isset($_POST['app'])?$_POST['app']:null;
-$categories = isset($_POST['categories'])?$_POST['categories']:null;
-if(is_null($app)) {
- bailOut(OC_Contacts_App::$l10n->t('Application name not provided.'));
-}
+OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
+
+$l = OC_L10N::get('core');
-OC_JSON::checkAppEnabled($app);
+$type = isset($_POST['type']) ? $_POST['type'] : null;
+$categories = isset($_POST['categories']) ? $_POST['categories'] : null;
+
+if(is_null($type)) {
+ bailOut($l->t('Object type not provided.'));
+}
-debug('The application "'.$app.'" uses the default file. OC_VObjects will not be updated.');
+debug('The application using category type "'
+ . $type
+ . '" uses the default file for deletion. OC_VObjects will not be updated.');
if(is_null($categories)) {
- bailOut('No categories selected for deletion.');
+ bailOut($l->t('No categories selected for deletion.'));
}
-$vcategories = new OC_VCategories($app);
+$vcategories = new OC_VCategories($type);
$vcategories->delete($categories);
OC_JSON::success(array('data' => array('categories'=>$vcategories->categories())));
diff --git a/core/ajax/vcategories/edit.php b/core/ajax/vcategories/edit.php
index caeebcaa940..0387b17576c 100644
--- a/core/ajax/vcategories/edit.php
+++ b/core/ajax/vcategories/edit.php
@@ -16,16 +16,18 @@ function debug($msg) {
}
OC_JSON::checkLoggedIn();
-$app = isset($_GET['app'])?$_GET['app']:null;
-if(is_null($app)) {
- bailOut('Application name not provided.');
+$l = OC_L10N::get('core');
+
+$type = isset($_GET['type']) ? $_GET['type'] : null;
+
+if(is_null($type)) {
+ bailOut($l->t('Category type not provided.'));
}
-OC_JSON::checkAppEnabled($app);
-$tmpl = new OC_TEMPLATE("core", "edit_categories_dialog");
+$tmpl = new OCP\Template("core", "edit_categories_dialog");
-$vcategories = new OC_VCategories($app);
+$vcategories = new OC_VCategories($type);
$categories = $vcategories->categories();
debug(print_r($categories, true));
$tmpl->assign('categories', $categories);
diff --git a/core/ajax/vcategories/favorites.php b/core/ajax/vcategories/favorites.php
new file mode 100644
index 00000000000..20accea61cd
--- /dev/null
+++ b/core/ajax/vcategories/favorites.php
@@ -0,0 +1,30 @@
+<?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.
+ */
+function bailOut($msg) {
+ OC_JSON::error(array('data' => array('message' => $msg)));
+ OC_Log::write('core', 'ajax/vcategories/addToFavorites.php: '.$msg, OC_Log::DEBUG);
+ exit();
+}
+function debug($msg) {
+ OC_Log::write('core', 'ajax/vcategories/addToFavorites.php: '.$msg, OC_Log::DEBUG);
+}
+
+OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
+
+$type = isset($_GET['type']) ? $_GET['type'] : null;
+
+if(is_null($type)) {
+ $l = OC_L10N::get('core');
+ bailOut($l->t('Object type not provided.'));
+}
+
+$categories = new OC_VCategories($type);
+$ids = $categories->getFavorites($type)) {
+
+OC_JSON::success(array('ids' => $ids));
diff --git a/core/ajax/vcategories/removeFromFavorites.php b/core/ajax/vcategories/removeFromFavorites.php
new file mode 100644
index 00000000000..ba6e95c2497
--- /dev/null
+++ b/core/ajax/vcategories/removeFromFavorites.php
@@ -0,0 +1,38 @@
+<?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.
+ */
+function bailOut($msg) {
+ OC_JSON::error(array('data' => array('message' => $msg)));
+ OC_Log::write('core', 'ajax/vcategories/removeFromFavorites.php: '.$msg, OC_Log::DEBUG);
+ exit();
+}
+function debug($msg) {
+ OC_Log::write('core', 'ajax/vcategories/removeFromFavorites.php: '.$msg, OC_Log::DEBUG);
+}
+
+OCP\JSON::checkLoggedIn();
+OCP\JSON::callCheck();
+
+$l = OC_L10N::get('core');
+
+$id = isset($_POST['id']) ? strip_tags($_POST['id']) : null;
+$type = isset($_POST['type']) ? $_POST['type'] : null;
+
+if(is_null($type)) {
+ bailOut($l->t('Object type not provided.'));
+}
+
+if(is_null($id)) {
+ bailOut($l->t('%s ID not provided.', $type));
+}
+
+$categories = new OC_VCategories($type);
+if(!$categories->removeFromFavorites($id, $type)) {
+ bailOut($l->t('Error removing %s from favorites.', $id));
+}
+
+OC_JSON::success();