From 5b0da6cb3adf6366afb3264cdab1f45a5b506029 Mon Sep 17 00:00:00 2001 From: BaobabCoder Date: Fri, 2 Jun 2017 10:29:48 +0200 Subject: Change the way to remove a list (card like) --- client/components/lists/listHeader.jade | 19 +++++- client/components/lists/listHeader.js | 117 ++++++++++++++++---------------- 2 files changed, 78 insertions(+), 58 deletions(-) (limited to 'client/components') diff --git a/client/components/lists/listHeader.jade b/client/components/lists/listHeader.jade index 29aa4282..2d2ae165 100644 --- a/client/components/lists/listHeader.jade +++ b/client/components/lists/listHeader.jade @@ -35,7 +35,7 @@ template(name="listActionPopup") li: a.js-close-list {{_ 'archive-list'}} hr ul.pop-over-list - li: a.js-remove-list {{_ 'remove-list'}} + li: a.js-more {{_ 'listMorePopup-title'}} template(name="boardLists") ul.pop-over-list @@ -45,3 +45,20 @@ template(name="boardLists") a.disabled {{title}} ({{_ 'current'}}) else a.js-select-list= title + +template(name="listMorePopup") + p.quiet + span.clearfix + span {{_ 'link-list'}} + = ' ' + i.fa.colorful(class="{{#if board.isPublic}}fa-globe{{else}}fa-lock{{/if}}") + input.inline-input(type="text" readonly value="{{ rootUrl }}") + | {{_ 'added'}} + span.date(title=list.createdAt) {{ moment createdAt 'LLL' }} + a.js-delete(title="{{_ 'list-delete-notice'}}") {{_ 'delete'}} + +template(name="listDeletePopup") + p {{_ "list-delete-pop"}} + unless archived + p {{_ "list-delete-suggest-archive"}} + button.js-confirm.negate.full(type="submit") {{_ 'delete'}} diff --git a/client/components/lists/listHeader.js b/client/components/lists/listHeader.js index f352022d..5c6e2099 100644 --- a/client/components/lists/listHeader.js +++ b/client/components/lists/listHeader.js @@ -1,69 +1,72 @@ BlazeComponent.extendComponent({ - editTitle(evt) { - evt.preventDefault(); - const newTitle = this.childComponents('inlinedForm')[0].getValue().trim(); - const list = this.currentData(); - if (newTitle) { - list.rename(newTitle.trim()); - } - }, + editTitle(evt) { + evt.preventDefault(); + const newTitle = this.childComponents('inlinedForm')[0].getValue().trim(); + const list = this.currentData(); + if (newTitle) { + list.rename(newTitle.trim()); + } + }, - isWatching() { - const list = this.currentData(); - return list.findWatcher(Meteor.userId()); - }, + isWatching() { + const list = this.currentData(); + return list.findWatcher(Meteor.userId()); + }, - limitToShowCardsCount() { - return Meteor.user().getLimitToShowCardsCount(); - }, + limitToShowCardsCount() { + return Meteor.user().getLimitToShowCardsCount(); + }, - showCardsCountForList(count) { - return count > this.limitToShowCardsCount(); - }, + showCardsCountForList(count) { + return count > this.limitToShowCardsCount(); + }, - events() { - return [{ - 'click .js-open-list-menu': Popup.open('listAction'), - submit: this.editTitle, - }]; - }, + events() { + return [{ + 'click .js-open-list-menu': Popup.open('listAction'), + submit: this.editTitle, + }]; + }, }).register('listHeader'); Template.listActionPopup.helpers({ - isWatching() { - return this.findWatcher(Meteor.userId()); - }, + isWatching() { + return this.findWatcher(Meteor.userId()); + }, }); Template.listActionPopup.events({ - 'click .js-add-card'() { - const listDom = document.getElementById(`js-list-${this._id}`); - const listComponent = BlazeComponent.getComponentForElement(listDom); - listComponent.openForm({ position: 'top' }); - Popup.close(); - }, - 'click .js-list-subscribe'() {}, - 'click .js-select-cards'() { - const cardIds = this.allCards().map((card) => card._id); - MultiSelection.add(cardIds); - Popup.close(); - }, - 'click .js-toggle-watch-list'() { - const currentList = this; - const level = currentList.findWatcher(Meteor.userId()) ? null : 'watching'; - Meteor.call('watch', 'list', currentList._id, level, (err, ret) => { - if (!err && ret) Popup.close(); - }); - }, - 'click .js-close-list'(evt) { - evt.preventDefault(); - this.archive(); - Popup.close(); - }, - 'click .js-remove-list'(evt) { - const currentList = this; - evt.preventDefault(); - Lists.remove(currentList._id); - Popup.close(); - }, + 'click .js-add-card' () { + const listDom = document.getElementById(`js-list-${this._id}`); + const listComponent = BlazeComponent.getComponentForElement(listDom); + listComponent.openForm({ position: 'top' }); + Popup.close(); + }, + 'click .js-list-subscribe' () {}, + 'click .js-select-cards' () { + const cardIds = this.allCards().map((card) => card._id); + MultiSelection.add(cardIds); + Popup.close(); + }, + 'click .js-toggle-watch-list' () { + const currentList = this; + const level = currentList.findWatcher(Meteor.userId()) ? null : 'watching'; + Meteor.call('watch', 'list', currentList._id, level, (err, ret) => { + if (!err && ret) Popup.close(); + }); + }, + 'click .js-close-list' (evt) { + evt.preventDefault(); + this.archive(); + Popup.close(); + }, + 'click .js-more': Popup.open('listMore'), }); + +Template.listMorePopup.events({ + 'click .js-delete': Popup.afterConfirm('listDelete', function() { + Popup.close(); + Lists.remove(this._id); + Utils.goBoardId(this.boardId); + }), +}); \ No newline at end of file -- cgit v1.2.3-1-g7c22 From de5589a987c8e32a42027b6d230d01204bd3e5a5 Mon Sep 17 00:00:00 2001 From: BaobabCoder Date: Fri, 2 Jun 2017 10:45:01 +0200 Subject: Fix missing popup title --- client/components/lists/listHeader.jade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'client/components') diff --git a/client/components/lists/listHeader.jade b/client/components/lists/listHeader.jade index 2d2ae165..81afebe1 100644 --- a/client/components/lists/listHeader.jade +++ b/client/components/lists/listHeader.jade @@ -55,7 +55,7 @@ template(name="listMorePopup") input.inline-input(type="text" readonly value="{{ rootUrl }}") | {{_ 'added'}} span.date(title=list.createdAt) {{ moment createdAt 'LLL' }} - a.js-delete(title="{{_ 'list-delete-notice'}}") {{_ 'delete'}} + a.js-delete {{_ 'delete'}} template(name="listDeletePopup") p {{_ "list-delete-pop"}} -- cgit v1.2.3-1-g7c22