增加删除书签确认框
This commit is contained in:
parent
1157af3105
commit
eb4ad76333
|
|
@ -1,4 +1,4 @@
|
|||
app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '$window', '$timeout', 'bookmarkService', 'pubSubService', function($scope, $state, $stateParams, $filter, $window, $timeout, bookmarkService, pubSubService) {
|
||||
app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '$window', '$timeout', 'ngDialog', 'bookmarkService', 'pubSubService', function($scope, $state, $stateParams, $filter, $window, $timeout, ngDialog, bookmarkService, pubSubService) {
|
||||
console.log("Hello bookmarksCtr...", $stateParams);
|
||||
$scope.bookmarks = []; // 书签数据
|
||||
$scope.showSearch = false; // 搜索对话框
|
||||
|
|
@ -8,10 +8,13 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
$('.js-radio-' + $scope.showStyle).checkbox('set checked');
|
||||
$scope.edit = false;
|
||||
const perPageItems = 20;
|
||||
var dialog = null;
|
||||
$scope.totalPages = 0;
|
||||
$scope.currentPage = 1;
|
||||
$scope.inputPage = '';
|
||||
$scope.loadBusy = false;
|
||||
$scope.waitDelBookmark = {};
|
||||
|
||||
$scope.changeCurrentPage = function(currentPage) {
|
||||
currentPage = parseInt(currentPage) || 0;
|
||||
console.log('currentPage = ', currentPage);
|
||||
|
|
@ -51,16 +54,31 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', '
|
|||
$scope.edit = !$scope.edit
|
||||
};
|
||||
|
||||
$scope.delBookmark = function(bookmarkId) {
|
||||
$scope.delBookmark = function(bookmark) {
|
||||
console.log('delBookmark..........')
|
||||
$scope.waitDelBookmark = $.extend(true, {}, bookmark); // 利用jQuery执行深度拷贝
|
||||
dialog = ngDialog.open({
|
||||
template: './views/dialog-del-bookmark.html',
|
||||
className: 'ngdialog-theme-default',
|
||||
scope: $scope
|
||||
});
|
||||
}
|
||||
|
||||
$scope.confirmDelBookmark = function(bookmarkId) {
|
||||
var params = {
|
||||
id: bookmarkId
|
||||
}
|
||||
ngDialog.close(dialog);
|
||||
bookmarkService.delBookmark(params)
|
||||
.then((data) => $("#" + bookmarkId).remove())
|
||||
.then((data) => {
|
||||
$("#" + bookmarkId).remove();
|
||||
toastr.success($scope.waitDelBookmark.title + ' 书签删除成功!', "提示");
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log('delBookmark err ', err)
|
||||
toastr.error($scope.waitDelBookmark.title + ' 书签删除失败!错误提示:' + JSON.stringify(err), "提示");
|
||||
});
|
||||
}
|
||||
|
||||
$scope.editBookmark = function(bookmarkId) {
|
||||
pubSubService.publish('bookmarksCtr.editBookmark', {
|
||||
'bookmarkId': bookmarkId
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$window', '$timeout', 'bookmarkService', 'pubSubService', function($scope, $state, $stateParams, $filter, $window, $timeout, bookmarkService, pubSubService) {
|
||||
app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$window', '$timeout', 'ngDialog', 'bookmarkService', 'pubSubService', function($scope, $state, $stateParams, $filter, $window, $timeout, ngDialog, bookmarkService, pubSubService) {
|
||||
console.log("Hello searchCtr...", $stateParams);
|
||||
const perPageItems = 20;
|
||||
var dialog = null;
|
||||
$scope.bookmarks = []; // 书签数据
|
||||
$scope.showSearch = false; //
|
||||
$scope.showTags = false; //
|
||||
|
|
@ -18,6 +19,8 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi
|
|||
$scope.currentPage = 1;
|
||||
$scope.inputPage = '';
|
||||
$scope.loading = false;
|
||||
$scope.waitDelBookmark = {};
|
||||
|
||||
$scope.changeCurrentPage = function(currentPage) {
|
||||
currentPage = parseInt(currentPage) || 0;
|
||||
console.log(currentPage);
|
||||
|
|
@ -61,21 +64,31 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi
|
|||
}
|
||||
}
|
||||
|
||||
$scope.delBookmark = function(bookmarkId) {
|
||||
toastr.warning('暂时不允许搜索的书签进行删除操作', "警告");
|
||||
return;
|
||||
$scope.delBookmark = function(bookmark) {
|
||||
$scope.waitDelBookmark = $.extend(true, {}, bookmark); // 利用jQuery执行深度拷贝
|
||||
dialog = ngDialog.open({
|
||||
template: './views/dialog-del-bookmark.html',
|
||||
className: 'ngdialog-theme-default',
|
||||
scope: $scope
|
||||
});
|
||||
}
|
||||
|
||||
$scope.confirmDelBookmark = function(bookmarkId) {
|
||||
var params = {
|
||||
id: bookmarkId
|
||||
}
|
||||
ngDialog.close(dialog);
|
||||
bookmarkService.delBookmark(params)
|
||||
.then((data) => $("#" + bookmarkId).remove())
|
||||
.then((data) => {
|
||||
$("#" + bookmarkId).remove();
|
||||
toastr.success($scope.waitDelBookmark.title + ' 书签删除成功!', "提示");
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log('delBookmark err ', err)
|
||||
toastr.error($scope.waitDelBookmark.title + ' 书签删除失败!错误提示:' + JSON.stringify(err), "提示");
|
||||
});
|
||||
}
|
||||
|
||||
$scope.editBookmark = function(bookmarkId) {
|
||||
toastr.warning('暂时不允许搜索的书签进行编辑操作', "警告");
|
||||
return;
|
||||
pubSubService.publish('bookmarksCtr.editBookmark', {
|
||||
'bookmarkId': bookmarkId
|
||||
});
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim
|
|||
$scope.currentTagId = ($stateParams && $stateParams.tagId) || '';
|
||||
$scope.edit = false;
|
||||
$scope.waitDelTag = {};
|
||||
$scope.waitDelBookmark = {};
|
||||
|
||||
pubSubService.subscribe('MenuCtr.tags', $scope, function(event, data) {
|
||||
console.log('subscribe MenuCtr.tags', data);
|
||||
|
|
@ -85,16 +86,30 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim
|
|||
}
|
||||
}
|
||||
|
||||
$scope.delBookmark = function(bookmarkId) {
|
||||
$scope.delBookmark = function(bookmark) {
|
||||
$scope.waitDelBookmark = $.extend(true, {}, bookmark); // 利用jQuery执行深度拷贝
|
||||
dialog = ngDialog.open({
|
||||
template: './views/dialog-del-bookmark.html',
|
||||
className: 'ngdialog-theme-default',
|
||||
scope: $scope
|
||||
});
|
||||
}
|
||||
|
||||
$scope.confirmDelBookmark = function(bookmarkId) {
|
||||
var params = {
|
||||
id: bookmarkId
|
||||
}
|
||||
ngDialog.close(dialog);
|
||||
bookmarkService.delBookmark(params)
|
||||
.then((data) => $("#" + bookmarkId).remove())
|
||||
.then((data) => {
|
||||
$("#" + bookmarkId).remove();
|
||||
toastr.success($scope.waitDelBookmark.title + ' 书签删除成功!', "提示");
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log('delBookmark err ', err)
|
||||
toastr.error($scope.waitDelBookmark.title + ' 书签删除失败!错误提示:' + JSON.stringify(err), "提示");
|
||||
});
|
||||
}
|
||||
|
||||
$scope.editBookmark = function(bookmarkId) {
|
||||
pubSubService.publish('bookmarksCtr.editBookmark', {
|
||||
'bookmarkId': bookmarkId
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
ng-click="jumpToUrl(bookmark.url, bookmark.id)"
|
||||
title="{{ bookmark.title }}"
|
||||
id="{{bookmark.id}}">
|
||||
<img class="ui ui middle aligned tiny image bookmarkOperaterHover" style="width:16px;height:16px" ng-src="./images/{{ bookmarkEditHover ? 'delete-hover' : 'delete'}}.png" ng-if="edit" ng-click="delBookmark(bookmark.id)">
|
||||
<img class="ui ui middle aligned tiny image bookmarkOperaterHover" style="width:16px;height:16px" ng-src="./images/{{ bookmarkEditHover ? 'delete-hover' : 'delete'}}.png" ng-if="edit" ng-click="delBookmark(bookmark)">
|
||||
<img class="ui ui middle aligned tiny image bookmarkOperaterHover" style="width:16px;height:16px;float:right;" ng-src="./images/{{ bookmarkEditHover ? 'edit-bookmark-hover' : 'edit-bookmark'}}.png" ng-if="edit" ng-click="editBookmark(bookmark.id)">
|
||||
<img class="ui ui middle aligned tiny image" ng-src=" http://favicon.byi.pw/?url={{bookmark.url}}" style="width:16px;height:16px;cursor:default;" ng-click="detailBookmark(bookmark);$event.stopPropagation()" ng-if="!edit">
|
||||
<span>{{ bookmark.title}}</span>
|
||||
|
|
@ -73,7 +73,7 @@
|
|||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/delete.png" ng-click="delBookmark(bookmark.id)" title="删除书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/delete.png" ng-click="delBookmark(bookmark)" title="删除书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/edit-bookmark.png" ng-click="editBookmark(bookmark.id)" title="编辑书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/detail.png" ng-click="detailBookmark(bookmark)" title="书签详情">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/copy.png" ng-click="copyBookmark(bookmark.url)" title="复制书签">
|
||||
|
|
|
|||
|
|
@ -0,0 +1,11 @@
|
|||
<div class="ngdialog-message">
|
||||
<h3>删除提示</h3>
|
||||
<p ng-show="ngDialogId">您确认要删除书签:
|
||||
<code>{{ waitDelBookmark.title }}</code>吗?
|
||||
</p>
|
||||
<p>如果删除该书签,那么再也无法查看到。</p>
|
||||
</div>
|
||||
<div class="ngdialog-buttons">
|
||||
<button type="button" class="ngdialog-button ngdialog-button-primary" ng-click="confirmDelBookmark(waitDelBookmark.id)">确定删除</button>
|
||||
<button type="button" class="ngdialog-button ngdialog-button-secondary" ng-click="closeThisDialog('button')">取消</button>
|
||||
</div>
|
||||
|
|
@ -147,8 +147,12 @@
|
|||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/delete.png" ng-click="delBookmark(bookmark.id)" title="删除书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/edit-bookmark.png" ng-click="editBookmark(bookmark.id)" title="编辑书签">
|
||||
<span ng-show="bookmark.own">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/delete.png" ng-click="delBookmark(bookmark)" title="删除书签">
|
||||
</span>
|
||||
<span ng-show="bookmark.own">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/edit-bookmark.png" ng-click="editBookmark(bookmark.id)" title="编辑书签">
|
||||
</span>
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/detail.png" ng-click="detailBookmark(bookmark)" title="书签详情">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/copy.png" ng-click="copyBookmark(bookmark.url)" title="复制链接">
|
||||
</td>
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@
|
|||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/delete.png" ng-click="delBookmark(bookmark.id)" title="删除书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/delete.png" ng-click="delBookmark(bookmark)" title="删除书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/edit-bookmark.png" ng-click="editBookmark(bookmark.id)" title="编辑书签">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/detail.png" ng-click="detailBookmark(bookmark)" title="书签详情">
|
||||
<img class="ui mini spaced image" style="width:16px;height:16px;margin:0 1px" ng-src="./images/copy.png" ng-click="copyBookmark(bookmark.url)" title="复制书签">
|
||||
|
|
|
|||
|
|
@ -384,7 +384,7 @@ api.get('/searchBookmarks', function(req, res) {
|
|||
params.userId = req.session.user.id;
|
||||
var bookmarks = [];
|
||||
var tagsBookmarks = [];
|
||||
var userId = '1';
|
||||
var userId = req.session.user.id;
|
||||
var totalItems = 0;
|
||||
var sendData = {
|
||||
totalItems: totalItems,
|
||||
|
|
@ -395,7 +395,13 @@ api.get('/searchBookmarks', function(req, res) {
|
|||
totalItems = searchData.totalItems;
|
||||
bookmarks = searchData.bookmarks;
|
||||
if (bookmarks.length > 0) {
|
||||
var bookmarkIds = bookmarks.map((bookmark) => bookmark.id);
|
||||
var bookmarkIds = bookmarks.map((bookmark) => {
|
||||
bookmark.own = bookmark.user_id == userId ? true : false;
|
||||
if (!bookmark.own) {
|
||||
bookmark.description = "其他用户的描述信息不允许查看";
|
||||
}
|
||||
return bookmark.id;
|
||||
});
|
||||
return db.getTagsBookmarks(bookmarkIds);
|
||||
} else {
|
||||
res.json(sendData);
|
||||
|
|
@ -431,6 +437,7 @@ api.get('/searchBookmarks', function(req, res) {
|
|||
})
|
||||
sendData.totalItems = totalItems;
|
||||
sendData.bookmarks = data;
|
||||
console.log(JSON.stringify(sendData))
|
||||
res.json(sendData);
|
||||
})
|
||||
.catch((err) => console.log('bookmarks table or card err', err))
|
||||
|
|
|
|||
Loading…
Reference in New Issue