]> source.dussan.org Git - nextcloud-server.git/commitdiff
Bookmarks: Move delete code to Bookmarks class, also change to use id
authorBart Visscher <bartv@thisnet.nl>
Thu, 3 May 2012 15:29:08 +0000 (17:29 +0200)
committerBart Visscher <bartv@thisnet.nl>
Thu, 3 May 2012 15:33:57 +0000 (17:33 +0200)
apps/bookmarks/ajax/delBookmark.php
apps/bookmarks/js/bookmarks.js
apps/bookmarks/lib/bookmarks.php

index 2634bed0b9cd2ce41fb21ed4ced1dcd9da2d6ca4..0b5689811aeebaffd774557a3dbe289e39718c54 100755 (executable)
@@ -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();
index 38b8c43eb7dcaec80457eb95e328af72aceb78a5..b1eebaa551540b1dc218c93d402f6d7a79facd97 100644 (file)
@@ -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();
+                               }
                        }
                }
        });
index 67b8e2f780ec0a43ef857fb655aba8e526cd0f12..e0005968f31525d0c2e326979fadade63cb6ebe1 100755 (executable)
@@ -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;
+       }
 }
 ?>