From 85bed0e0f5141dc7c7f4f87aac5245173c755841 Mon Sep 17 00:00:00 2001 From: HelloWorld Date: Sun, 23 Feb 2020 18:46:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=88=A0=E9=99=A4=E7=95=99?= =?UTF-8?q?=E8=A8=80=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- database/db.js | 14 +++ public/images/admin.png | Bin 0 -> 8414 bytes .../scripts/controllers/advice-controller.js | 25 +++++- .../controllers/bookmarks-controller.js | 82 +++++------------- .../scripts/controllers/menus-controller.js | 10 ++- public/scripts/services/bookmark-service.js | 13 +++ public/scripts/services/data-service.js | 3 +- public/views/advice.html | 17 +++- routes/api.js | 23 ++++- 9 files changed, 119 insertions(+), 68 deletions(-) create mode 100644 public/images/admin.png diff --git a/database/db.js b/database/db.js index c18a959..7b00ae4 100644 --- a/database/db.js +++ b/database/db.js @@ -1170,6 +1170,20 @@ db.delNote = function (id) { }); } +db.delCommit = function (id, user_id) { + var sql = "DELETE FROM `advices` WHERE `id` = '" + id + "' AND `user_id` = '" + user_id + "'"; + console.log(sql); + return new Promise(function (resolve, reject) { + client.query(sql, (err, result) => { + if (err) { + reject(err); + } else { + resolve(result.affectedRows); + } + }); + }); +} + db.updateNote = function (id, content, tag_id) { var sql = "UPDATE `notes` SET `content`=" + client.escape(content) + ", `tag_id`='" + tag_id + "' WHERE (`id`='" + id + "')"; console.log(sql); diff --git a/public/images/admin.png b/public/images/admin.png new file mode 100644 index 0000000000000000000000000000000000000000..37cfdecb50128ccd89650436e5d5de5ea0de793a GIT binary patch literal 8414 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 { $scope.user = data; + console.log(data); }) .catch((err) => { @@ -49,6 +50,28 @@ app.controller('adviceCtr', ['$scope', '$state', '$timeout', 'bookmarkService', }); } + $scope.showDelComment = function (advice) { + $scope.curAdvice = advice; + $('.js-comment-del').modal('show'); + } + + $scope.delComment = function () { + // console.log($scope.curAdvice); + bookmarkService.delComment($scope.curAdvice) + .then((data) => { + if (data.result == 1) { + toastr.success('删除成功', "提示"); + getAdvices({}); + } else { + toastr.error('删除失败', "错误"); + } + }) + .catch((err) => { + toastr.error('删除失败', "错误"); + }); + $('.js-comment-del').modal('hide'); + } + function getAdvices(params) { bookmarkService.getAdvices(params) .then((data) => { diff --git a/public/scripts/controllers/bookmarks-controller.js b/public/scripts/controllers/bookmarks-controller.js index 4522e64..c36688d 100644 --- a/public/scripts/controllers/bookmarks-controller.js +++ b/public/scripts/controllers/bookmarks-controller.js @@ -20,7 +20,13 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' $scope.order = [false, false, false]; $scope.order[($stateParams && $stateParams.orderIndex) || 0] = true; $scope.bookmarkData = {}; - var timeagoInstance = timeago(); + + var menusScope = $('div[ng-controller="menuCtr"]').scope(); + var login = (menusScope && menusScope.login) || false; + pubSubService.publish('Common.menuActive', { + login: login, + index: login ? dataService.LoginIndexBookmarks : dataService.NotLoginIndexBookmarks + }); getBookmarks(); @@ -91,66 +97,26 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' function getBookmarks() { var params = {} - params.showStyle = $scope.showStyle + params.showStyle = 'navigate'; params.currentPage = $scope.currentPage; params.perPageItems = perPageItems; - if (!params.showStyle) { - bookmarkService.userInfo({}) - .then((user) => { - $scope.showStyle = (user && user.show_style) || 'navigate'; - updateShowStyle(); - getBookmarks(); // 拿到默认显示风格了,继续取获取书签 - }) - .catch((err) => dataService.netErrorHandle(err, $state)); - } else { - $scope.loadBusy = true; - if (params.showStyle == 'table' && (!$scope.forbidTransition)) { - $('.js-table-bookmarks').transition('hide'); - } - bookmarkService.getBookmarks(params) - .then((data) => { - $scope.bookmarks = data; - if ($scope.bookmarks.length <= 2) { - $(".js-msg").removeClass("hidden"); - } - if ($scope.bookmarks.length == 0) { - toastr.info('您还没有书签,请点击菜单栏的添加按钮进行添加', "提示"); - } + $scope.loadBusy = true; + bookmarkService.getBookmarks(params) + .then((data) => { + $scope.bookmarks = data; + if ($scope.bookmarks.length <= 2) { + $(".js-msg").removeClass("hidden"); + } + if ($scope.bookmarks.length == 0) { + toastr.info('您还没有书签,请点击菜单栏的添加按钮进行添加', "提示"); + } + $scope.loadBusy = false; + }) + .catch((err) => { + dataService.netErrorHandle(err, $state); + $scope.loadBusy = false; + }); - pubSubService.publish('Common.menuActive', { - login: true, - index: dataService.LoginIndexBookmarks - }); - if (!$scope.forbidTransition) { - transition(); - } - $scope.forbidTransition = false; - $scope.loadBusy = false; - }) - .catch((err) => { - dataService.netErrorHandle(err, $state); - $scope.loadBusy = false; - }); - } - } - - function transition() { - if ($scope.showStyle == 'card' && $scope.currentPage > 1) { - return; - } - var className = 'js-segment-navigate'; - if ($scope.showStyle == 'card') { - className = 'js-segment-card' - } else if ($scope.showStyle == 'table') { - className = 'js-table-bookmarks' - } else if ($scope.showStyle == 'costomTag') { - className = 'js-segment-costomTag' - } - $('.' + className).transition('hide'); - $('.' + className).transition({ - animation: dataService.animation(), - duration: 500, - }); } }]); diff --git a/public/scripts/controllers/menus-controller.js b/public/scripts/controllers/menus-controller.js index 5d19822..cd8e7f6 100644 --- a/public/scripts/controllers/menus-controller.js +++ b/public/scripts/controllers/menus-controller.js @@ -1,6 +1,6 @@ app.controller('menuCtr', ['$scope', '$stateParams', '$state', '$window', '$timeout', '$document', 'ngDialog', 'pubSubService', 'bookmarkService', 'dataService', function ($scope, $stateParams, $state, $window, $timeout, $document, ngDialog, pubSubService, bookmarkService, dataService) { console.log("Hello menuCtr") - $scope.login = true; /**< 是否登陆 */ + $scope.login = false; /**< 是否登陆 */ $scope.selectLoginIndex = 0; /**< 默认登陆之后的选择的菜单索引,下表从 0 开始 */ $scope.selectNotLoginIndex = 0; /**< 默认未登陆之后的选择的菜单索引,下表从 0 开始 */ $scope.searchWord = ''; /**< 搜索关键字 */ @@ -14,6 +14,8 @@ app.controller('menuCtr', ['$scope', '$stateParams', '$state', '$window', '$time $scope.showSearchBtn = true; $scope.user = {}; + + // 防止在登陆的情况下,在浏览器里面直接输入url,这时候要更新菜单选项 pubSubService.subscribe('Common.menuActive', $scope, function (event, params) { console.log("subscribe Common.menuActive, login = " + params.login + ", index = " + params.index); @@ -26,6 +28,10 @@ app.controller('menuCtr', ['$scope', '$stateParams', '$state', '$window', '$time $scope.quickUrl = params.quickUrl; }); + pubSubService.subscribe('loginCtr.login', $scope, function (event, params) { + $scope.login = params.login; + }); + $scope.loginMenus = dataService.loginMenus; // 登陆之后显示的菜单数据。uiSerf:内部跳转链接。 $scope.notLoginMenus = dataService.notLoginMenus; // 未登陆显示的菜单数据 @@ -34,11 +40,13 @@ app.controller('menuCtr', ['$scope', '$stateParams', '$state', '$window', '$time pubSubService.publish('loginCtr.login', { 'login': data.logined, }); + $scope.login = data.logined; }) .catch((err) => { pubSubService.publish('loginCtr.login', { 'login': data.logined, }); + $scope.login = false; }); bookmarkService.userInfo({}) diff --git a/public/scripts/services/bookmark-service.js b/public/scripts/services/bookmark-service.js index 8adaf99..1b3afdc 100644 --- a/public/scripts/services/bookmark-service.js +++ b/public/scripts/services/bookmark-service.js @@ -256,6 +256,19 @@ app.factory('bookmarkService', ['$http', '$q', function ($http, $q) { }); return def.promise; }, + delComment: function (params) { + var def = $q.defer(); + $http.delete('/api/delComment/', { + params: params + }) + .success(function (data) { + def.resolve(data); + }) + .error(function (data) { + def.reject(data); + }); + return def.promise; + }, /** * @func * @desc 根据显示页数的索引,获取书签的数据 diff --git a/public/scripts/services/data-service.js b/public/scripts/services/data-service.js index a4dcd55..643a108 100644 --- a/public/scripts/services/data-service.js +++ b/public/scripts/services/data-service.js @@ -10,10 +10,9 @@ app.factory('dataService', [function () { LoginIndexPraise: 6, // 非登陆索引 - NotLoginIndexHome: 0, + NotLoginIndexBookmarks: 0, NotLoginIndexLogin: 1, NotLoginIndexHot: 2, - NotLoginIndexPraise: 3, loginMenus: [{ uiSref: 'bookmarks', diff --git a/public/views/advice.html b/public/views/advice.html index 1538077..ba7c0fd 100644 --- a/public/views/advice.html +++ b/public/views/advice.html @@ -28,8 +28,8 @@

最新100条留言

- - + +
{{ advice.username }} @@ -39,8 +39,21 @@ +
{{ advice.comment }}
+ diff --git a/routes/api.js b/routes/api.js index a58e633..c9f53de 100644 --- a/routes/api.js +++ b/routes/api.js @@ -332,6 +332,25 @@ api.delete('/delBookmark', function (req, res) { .catch((err) => console.log('delBookmark err', err)); }) +api.delete('/delComment', function (req, res) { + console.log("delComment username = ", req.session.username); + if (!req.session.user) { + res.send(401); + return; + } + + var userId = req.session.username === 'admin' ? req.query.user_id : req.session.user.id; + db.delCommit(req.query.id, userId) + .then((affectedRows) => { + res.json({ + code: 0, + result: affectedRows + }); + }) + .catch((err) => console.log('delComment err', err)); +}) + + api.post('/updateBookmark', function (req, res) { console.log("updateBookmark username = ", req.session.username); if (!req.session.user) { @@ -393,10 +412,6 @@ api.get('/bookmark', function (req, res) { api.get('/bookmarks', function (req, res) { console.log("bookmarks username = ", req.session.username); - if (!req.session.user) { - res.send(401); - return; - } var userId = 226; //req.session.user.id; db.getTags(userId) .then((tags) => db.getBookmarksNavigate(tags))