summaryrefslogtreecommitdiffstats
path: root/apps/bookmarks
diff options
context:
space:
mode:
authorBart Visscher <bartv@thisnet.nl>2012-05-03 17:29:08 +0200
committerBart Visscher <bartv@thisnet.nl>2012-05-03 17:33:57 +0200
commitb6ea57c8b6fac904f97f456463a52e509de51733 (patch)
tree2508cca2ca16619dadb20e7ccecfff47432cdeb3 /apps/bookmarks
parent8076b1e12dec3e3861b7024c74873ea330d052c3 (diff)
downloadnextcloud-server-b6ea57c8b6fac904f97f456463a52e509de51733.tar.gz
nextcloud-server-b6ea57c8b6fac904f97f456463a52e509de51733.zip
Bookmarks: Move delete code to Bookmarks class, also change to use id
Diffstat (limited to 'apps/bookmarks')
-rwxr-xr-xapps/bookmarks/ajax/delBookmark.php35
-rw-r--r--apps/bookmarks/js/bookmarks.js10
-rwxr-xr-xapps/bookmarks/lib/bookmarks.php32
3 files changed, 44 insertions, 33 deletions
diff --git a/apps/bookmarks/ajax/delBookmark.php b/apps/bookmarks/ajax/delBookmark.php
index 2634bed0b9c..0b5689811ae 100755
--- a/apps/bookmarks/ajax/delBookmark.php
+++ b/apps/bookmarks/ajax/delBookmark.php
@@ -30,33 +30,10 @@ $RUNTIME_NOSETUPFS=true;
OCP\JSON::checkLoggedIn();
OCP\JSON::checkAppEnabled('bookmarks');
-$params=array(
- htmlspecialchars_decode($_GET["url"]),
- OCP\USER::getUser()
- );
+$id = $_GET['id'];
+if (!OC_Bookmarks_Bookmarks::deleteUrl($id)){
+ OC_JSON::error();
+ exit();
+}
-$query = OCP\DB::prepare("
- SELECT id FROM *PREFIX*bookmarks
- WHERE url LIKE ?
- AND user_id = ?
- ");
-
-$id = $query->execute($params)->fetchOne();
-
-$query = OCP\DB::prepare("
- DELETE FROM *PREFIX*bookmarks
- WHERE id = $id
- ");
-
-$result = $query->execute();
-
-
-$query = OCP\DB::prepare("
- DELETE FROM *PREFIX*bookmarks_tags
- WHERE bookmark_id = $id
- ");
-
-$result = $query->execute();
-// var_dump($params);
-
-OCP\JSON::success(array('data' => array()));
+OCP\JSON::success();
diff --git a/apps/bookmarks/js/bookmarks.js b/apps/bookmarks/js/bookmarks.js
index 38b8c43eb7d..b1eebaa5515 100644
--- a/apps/bookmarks/js/bookmarks.js
+++ b/apps/bookmarks/js/bookmarks.js
@@ -93,11 +93,13 @@ function delBookmark(event) {
var record = $(this).parent().parent();
$.ajax({
url: OC.filePath('bookmarks', 'ajax', 'delBookmark.php'),
- data: 'url=' + encodeURIComponent($(this).parent().parent().children('.bookmark_url:first').text()),
+ data: 'id=' + record.data('id'),
success: function(data){
- record.remove();
- if($('.bookmarks_list').is(':empty')) {
- $("#firstrun").show();
+ if (data.status == 'success') {
+ record.remove();
+ if($('.bookmarks_list').is(':empty')) {
+ $("#firstrun").show();
+ }
}
}
});
diff --git a/apps/bookmarks/lib/bookmarks.php b/apps/bookmarks/lib/bookmarks.php
index 67b8e2f780e..e0005968f31 100755
--- a/apps/bookmarks/lib/bookmarks.php
+++ b/apps/bookmarks/lib/bookmarks.php
@@ -113,5 +113,37 @@ class OC_Bookmarks_Bookmarks{
$bookmarks = $query->execute($params)->fetchAll();
return $bookmarks;
}
+
+ public static function deleteUrl($id)
+ {
+ $user = OCP\USER::getUser();
+
+ $query = OCP\DB::prepare("
+ SELECT id FROM *PREFIX*bookmarks
+ WHERE id = ?
+ AND user_id = ?
+ ");
+
+ $result = $query->execute(array($id, $user));
+ $id = $result->fetchOne();
+ if ($id === false) {
+ return false;
+ }
+
+ $query = OCP\DB::prepare("
+ DELETE FROM *PREFIX*bookmarks
+ WHERE id = $id
+ ");
+
+ $result = $query->execute();
+
+ $query = OCP\DB::prepare("
+ DELETE FROM *PREFIX*bookmarks_tags
+ WHERE bookmark_id = $id
+ ");
+
+ $result = $query->execute();
+ return true;
+ }
}
?>