diff --git a/database/db.js b/database/db.js index 79a5b40..59cff0a 100644 --- a/database/db.js +++ b/database/db.js @@ -38,8 +38,8 @@ db.addBookmark = function(user_id, bookmark) { }); }; -db.delBookmark = function(id){ - var sql = "DELETE FROM `bookmarks` WHERE (`id`='"+ id +"')"; +db.delBookmark = function(id) { + var sql = "DELETE FROM `bookmarks` WHERE (`id`='" + id + "')"; return new Promise(function(resolve, reject) { client.query(sql, (err, result) => { if (err) { @@ -51,8 +51,8 @@ db.delBookmark = function(id){ }); } -db.updateBookmark = function(bookmark){ - var sql = "UPDATE `bookmarks` SET `title`='"+ bookmark.title +"', `description`='"+ bookmark.description+"', `url`='"+ bookmark.url +"', `public`='"+ bookmark.public +"' WHERE (`id`='"+ bookmark.id +"')"; +db.updateBookmark = function(bookmark) { + var sql = "UPDATE `bookmarks` SET `title`='" + bookmark.title + "', `description`='" + bookmark.description + "', `url`='" + bookmark.url + "', `public`='" + bookmark.public + "' WHERE (`id`='" + bookmark.id + "')"; return new Promise(function(resolve, reject) { client.query(sql, (err, result) => { if (err) { @@ -64,8 +64,8 @@ db.updateBookmark = function(bookmark){ }); } -db.getBookmark = function(id){ - var sql ="SELECT * FROM `bookmarks` WHERE `id` = '"+ id +"'"; +db.getBookmark = function(id) { + var sql = "SELECT * FROM `bookmarks` WHERE `id` = '" + id + "'"; return new Promise(function(resolve, reject) { client.query(sql, (err, result) => { if (err) { @@ -77,8 +77,8 @@ db.getBookmark = function(id){ }); } -db.getBookmarkTags = function(bookmard_id){ - var sql ="SELECT tag_id FROM `tags_bookmarks` WHERE `bookmark_id` = '"+ bookmard_id +"'"; +db.getBookmarkTags = function(bookmard_id) { + var sql = "SELECT tag_id FROM `tags_bookmarks` WHERE `bookmark_id` = '" + bookmard_id + "'"; return new Promise(function(resolve, reject) { client.query(sql, (err, result) => { if (err) { @@ -92,7 +92,7 @@ db.getBookmarkTags = function(bookmard_id){ } db.delBookmarkTags = function(bookmard_id) { - var sql = "DELETE FROM `tags_bookmarks` WHERE (`bookmark_id`='"+ bookmard_id +"')"; + var sql = "DELETE FROM `tags_bookmarks` WHERE (`bookmark_id`='" + bookmard_id + "')"; return new Promise(function(resolve, reject) { client.query(sql, (err, result) => { if (err) { @@ -250,7 +250,22 @@ db.getBookmarksTable = function(user_id) { } }); }); +} +db.getBookmarksSearch = function(params) { + var search_word = params.searchWord; + var user_id = '1'; + var sql = "SELECT id, user_id, title, description, url, public, click_count, DATE_FORMAT(created_at, '%Y-%m-%d') as created_at, DATE_FORMAT(last_click, '%Y-%m-%d') as last_click FROM `bookmarks` WHERE user_id='" + user_id + "' AND (`title` LIKE '%"+ search_word +"%' OR `url` LIKE '%"+ search_word +"%') ORDER BY click_count DESC, created_at DESC LIMIT 0, 50"; + console.log(sql); + return new Promise(function(resolve, reject) { + client.query(sql, (err, result) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }); + }); } db.getBookmarksCard = function(user_id) { diff --git a/public/images/cocktail.png b/public/images/cocktail.png new file mode 100644 index 0000000..7279cde Binary files /dev/null and b/public/images/cocktail.png differ diff --git a/public/images/hide.png b/public/images/hide.png new file mode 100644 index 0000000..2e3658d Binary files /dev/null and b/public/images/hide.png differ diff --git a/public/scripts/controllers/edit-controller.js b/public/scripts/controllers/edit-controller.js index 841782a..f6291dd 100644 --- a/public/scripts/controllers/edit-controller.js +++ b/public/scripts/controllers/edit-controller.js @@ -148,6 +148,7 @@ app.controller('editCtr', ['$scope', '$state', '$timeout', 'bookmarkService', 'p bookmarkService.getTags(params) .then((data) => { $scope.tags = data; + $('.ui.modal.js-add-bookmark .ui.dropdown').removeClass('loading'); }) .catch((err) => console.log('getTags err', err)); } diff --git a/public/scripts/controllers/menus-controller.js b/public/scripts/controllers/menus-controller.js index f7cef79..ec62d4e 100644 --- a/public/scripts/controllers/menus-controller.js +++ b/public/scripts/controllers/menus-controller.js @@ -40,7 +40,11 @@ app.controller('menuCtr', ['$scope', '$stateParams', '$state', 'pubSubService', * @func * @desc 点击搜索按钮搜索书签 */ - $scope.searchBookmarks = function() { + $scope.searchBookmarks = function(searchWord) { + console.log(searchWord); + $state.go('search', { + searchWord: searchWord, + }) updateMenuActive($scope.selectLoginIndex = 0); } diff --git a/public/scripts/controllers/search-controller.js b/public/scripts/controllers/search-controller.js index 707daa5..0805060 100644 --- a/public/scripts/controllers/search-controller.js +++ b/public/scripts/controllers/search-controller.js @@ -1,15 +1,19 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$window', '$timeout', 'bookmarkService', 'pubSubService', function($scope, $state, $stateParams, $filter, $window, $timeout, bookmarkService, pubSubService) { console.log("Hello searchCtr...", $stateParams); $scope.bookmarks = []; // 书签数据 - $scope.showSearch = true; // 搜索对话框 + $scope.showSearch = false; // 搜索对话框 $scope.searchWord = ($stateParams && $stateParams.searchWord) || '' $scope.dateBegin = ''; $scope.dateEnd = ''; $scope.clickCount = ''; $scope.username = ''; $scope.userRange = ''; + $scope.bookmarkCount = 0 + var searchParams = { + searchWord: $scope.searchWord, + } - searchBookmarks($stateParams); + searchBookmarks(searchParams); $scope.delBookmark = function(bookmarkId) { var params = { @@ -32,6 +36,10 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi } $scope.search = function() { + var params = { + searchWord: $scope.searchWord, + } + searchBookmarks(params) console.log('search..', $scope.searchWord, $scope.dateBegin, $scope.clickCount, $scope.username, $scope.userRange) } @@ -39,6 +47,7 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi bookmarkService.searchBookmarks(params) .then((data) => { $scope.bookmarks = data; + $scope.bookmarkCount = data.length; pubSubService.publish('Common.menuActive', { login: true, index: 0 diff --git a/public/scripts/directives/js-init-directive.js b/public/scripts/directives/js-init-directive.js index bb175d3..f76b5f4 100644 --- a/public/scripts/directives/js-init-directive.js +++ b/public/scripts/directives/js-init-directive.js @@ -1,8 +1,8 @@ -app.directive('jsDataBeginInit', function($compile) { +app.directive('jsDataCreateBeginInit', function($compile) { return { restrict: 'A', link: function($scope, $element, $attrs) { - $('.ui.calendar.js-date-begin').calendar({ + $('.ui.calendar.js-date-create-begin').calendar({ type: 'date', formatter: { date: function(date, settings) { @@ -13,18 +13,18 @@ app.directive('jsDataBeginInit', function($compile) { return year + '/' + month + '/' + day; } }, - endCalendar: $('.ui.calendar.js-date-end') + endCalendar: $('.ui.calendar.js-date-create-end') }); }, }; }); -app.directive('jsDataEndInit', function($compile) { +app.directive('jsDataCreateEndInit', function($compile) { return { restrict: 'A', link: function($scope, $element, $attrs) { - $('.ui.calendar.js-date-end').calendar({ + $('.ui.calendar.js-date-create-end').calendar({ type: 'date', formatter: { date: function(date, settings) { @@ -35,7 +35,50 @@ app.directive('jsDataEndInit', function($compile) { return year + '/' + month + '/' + day; } }, - startCalendar: $('.ui.calendar.js-date-begin') + startCalendar: $('.ui.calendar.js-date-create-begin') + }); + }, + }; +}); + +app.directive('jsDataClickBeginInit', function($compile) { + return { + restrict: 'A', + link: function($scope, $element, $attrs) { + $('.ui.calendar.js-date-click-begin').calendar({ + type: 'date', + formatter: { + date: function(date, settings) { + if (!date) return ''; + var day = date.getDate(); + var month = date.getMonth() + 1; + var year = date.getFullYear(); + return year + '/' + month + '/' + day; + } + }, + endCalendar: $('.ui.calendar.js-date-click-end') + }); + }, + }; +}); + + +app.directive('jsDataClickEndInit', function($compile) { + return { + restrict: 'A', + link: function($scope, $element, $attrs) { + $('.ui.calendar.js-date-click-end').calendar({ + type: 'date', + formatter: { + date: function(date, settings) { + if (!date) return ''; + var day = date.getDate(); + var month = date.getMonth() + 1; + var year = date.getFullYear(); + return year + '/' + month + '/' + day; + } + }, + startCalendar: $('.ui.calendar.js-date-click-begin') }); }, }; diff --git a/public/scripts/services/bookmark-service.js b/public/scripts/services/bookmark-service.js index 154ee6c..30f7f3e 100644 --- a/public/scripts/services/bookmark-service.js +++ b/public/scripts/services/bookmark-service.js @@ -200,10 +200,10 @@ app.factory('httpInterceptor', ['$q', '$injector', function($q, $injector) { }, responseError: function(err) { if (401 === err.status) { - toastr["error"]("警告", "您需要先登录才能使用该功能"); + toastr.warning("您需要先登录才能使用该功能", "警告"); $injector.get('$state').go('login', {}) } else { - toastr["error"]("警告", JSON.stringify(err)); + toastr.error(JSON.stringify(err), "错误"); } return $q.reject(err); } diff --git a/public/views/menus.html b/public/views/menus.html index cf88082..8406343 100644 --- a/public/views/menus.html +++ b/public/views/menus.html @@ -1,5 +1,5 @@