diff --git a/public/scripts/controllers/edit-controller.js b/public/scripts/controllers/edit-controller.js index 0b15e04..51ef968 100644 --- a/public/scripts/controllers/edit-controller.js +++ b/public/scripts/controllers/edit-controller.js @@ -12,6 +12,7 @@ app.controller('editCtr', ['$scope', '$state', '$timeout', '$document', 'bookmar if (/http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/.test(newUrl)) { var params = { url: newUrl, + requestId: 0, } bookmarkService.getArticle(params) .then((data) => $scope.title = data.title) @@ -113,8 +114,9 @@ app.controller('editCtr', ['$scope', '$state', '$timeout', '$document', 'bookmar .then((data) => { $('.ui.modal.js-add-bookmark').modal('hide'); pubSubService.publish('EditCtr.inserBookmarsSuccess', data); + console.log(JSON.stringify(data)); if (data.title) { - toastr.success('[ ' + data.title + ' ] 添加成功,将自动重新更新书签!', "提示"); + toastr.success('[ ' + data.title + ' ] 添加成功,将自动重新更新书签!
' + (data.update ? '系统检测到该书签之前添加过,只更新链接,描述,标题,分类。创建日期与最后点击日期不更新!' : ''), "提示"); } else { toastr.error('[ ' + params.title + ' ] 添加失败', "提示"); } diff --git a/routes/api.js b/routes/api.js index c86485b..a977bf0 100644 --- a/routes/api.js +++ b/routes/api.js @@ -731,10 +731,18 @@ api.post('/addBookmark', function(req, res) { var tags = bookmark.tags; var bookmarkId = -1; var ret = {}; + var update = false; db.getBookmarkbyUrl(userId, bookmark.url) .then((bookmarkId) => { // 如果这个url的书签存在了,那么直接返回书签,否则返回插入的书签 - return bookmarkId ? Promise.resolve(bookmarkId) : db.addBookmark(userId, bookmark); + if(bookmarkId){ + bookmark.id = bookmarkId; + db.updateBookmark(bookmark); // 如果存在,更新一下。 + update = true; + return Promise.resolve(bookmarkId); + } else { + return db.addBookmark(userId, bookmark); + } }) .then((bookmark_id) => { db.delBookmarkTags(bookmark_id); // 不管3721,先删掉旧的分类 @@ -750,6 +758,7 @@ api.post('/addBookmark', function(req, res) { }) .then((bookmarkTags) => { ret.tags = bookmarkTags; + ret.update = update; res.json(ret) }) .catch((err) => console.log('addBookmark err', err)); // oops! @@ -765,11 +774,18 @@ api.post('/favoriteBookmark', function(req, res) { var userId = req.session.user.id; var bookmarkId = -1; var ret = {}; - + var update = false; db.getBookmarkbyUrl(userId, bookmark.url) .then((bookmarkId) => { // 如果这个url的书签存在了,那么直接返回书签,否则返回插入的书签 - return bookmarkId ? Promise.resolve(bookmarkId) : db.addBookmark(userId, bookmark); + if(bookmarkId){ + bookmark.id = bookmarkId; + db.updateBookmark(bookmark); // 如果存在,更新一下。 + update = true; + return Promise.resolve(bookmarkId); + } else { + return db.addBookmark(userId, bookmark); + } }) .then((bookmark_id) => { db.delBookmarkTags(bookmark_id); // 不管3721,先删掉旧的分类 @@ -798,6 +814,7 @@ api.post('/favoriteBookmark', function(req, res) { }) .then((bookmarkTags) => { ret.tags = bookmarkTags; + ret.update = update; res.json(ret) }) .catch((err) => console.log('addBookmark err', err)); // oops!