function testEditBookmark() { $this->cleanDB(); $id = Bookmarks::addBookmark($this->userid, $this->db, "http://www.heise.de", "Heise", array("one", "two"), "PrivatTag", false); Bookmarks::editBookmark($this->userid, $this->db, $id, "http://www.google.de", "NewTitle", array("three")); $bookmark = Bookmarks::findUniqueBookmark($id, $this->userid, $this->db); $this->assertEquals("NewTitle", $bookmark['title']); $this->assertEquals("http://www.google.de", $bookmark['url']); $this->assertEquals(1, count($bookmark['tags'])); }
/** * @NoAdminRequired * @NoCSRFRequired */ public function bookmarklet($url = "", $title = "") { $bookmarkExists = Bookmarks::bookmarkExists($url, $this->userId, $this->db); $description = ""; if ($bookmarkExists != false) { $bookmark = Bookmarks::findUniqueBookmark($bookmarkExists, $this->userId, $this->db); $description = $bookmark['description']; } $params = array('url' => $url, 'title' => $title, 'description' => $description, 'bookmarkExists' => $bookmarkExists); return new TemplateResponse('bookmarks', 'addBookmarklet', $params); // templates/main.php }
/** @NoAdminRequired * * @param int $id * @param bool $is_public Description * @return \OCP\AppFramework\Http\TemplateResponse */ public function editBookmark($id = null, $url = "", $item = array(), $title = "", $is_public = false, $record_id = null, $description = "") { // Check if it is a valid URL if (filter_var($url, FILTER_VALIDATE_URL) === FALSE) { return new JSONResponse(array(), Http::STATUS_BAD_REQUEST); } if ($record_id == null) { return new JSONResponse(array(), Http::STATUS_BAD_REQUEST); } $tags = isset($item['tags']) ? $item['tags'] : array(); if (is_numeric($record_id)) { $id = Bookmarks::editBookmark($this->userId, $this->db, $record_id, $url, $title, $tags, $description, $is_public = false); } $bm = Bookmarks::findUniqueBookmark($id, $this->userId, $this->db); return new JSONResponse(array('item' => $bm, 'status' => 'success')); }
/** @NoAdminRequired * * @param int $id * @param bool $is_public Description * @return \OCP\AppFramework\Http\TemplateResponse */ public function editBookmark($id = null, $url = "", $item = array(), $title = "", $is_public = false, $record_id = null, $description = "") { // Check if it is a valid URL $urlData = parse_url($url); if ($urlData === false || !isset($urlData['scheme']) || !isset($urlData['host'])) { return new JSONResponse(array(), Http::STATUS_BAD_REQUEST); } if ($record_id == null) { return new JSONResponse(array(), Http::STATUS_BAD_REQUEST); } $tags = isset($item['tags']) ? $item['tags'] : array(); if (is_numeric($record_id)) { $id = Bookmarks::editBookmark($this->userId, $this->db, $record_id, $url, $title, $tags, $description, $is_public = false); } $bm = Bookmarks::findUniqueBookmark($id, $this->userId, $this->db); return new JSONResponse(array('item' => $bm, 'status' => 'success')); }
/** * @CORS * @NoAdminRequired * @NoCSRFRequired */ public function returnUpdateAsJson($id, $url = "", $tags = array(), $title = "", $description = "") { $user = \OCP\User::getUser(); if ($tags[0] == "") { $tags = array(); } $output = Bookmarks::editBookmark($user, $this->db, $id, $url, $title, $tags, $description, false); if (count($output) == 0) { $output["status"] = 'error'; $output["message"] = "No results from this query"; return new JSONResponse($output); } $output = Bookmarks::findUniqueBookmark($output, $user, $this->db); return new JSONResponse($output); }