Improve the list menu

* Grow the click-able zone of the list menu
* Remove a dead link on the list menu
* Merge list menu files with header menu to be consistent with the
  board components internal organization

Closes #106
This commit is contained in:
Maxime Quandalle 2015-08-28 06:21:30 +02:00
parent 91cfcf7b12
commit 691c3aff68
6 changed files with 86 additions and 86 deletions

View file

@ -77,8 +77,9 @@
.list-header-menu-icon .list-header-menu-icon
position: absolute position: absolute
top: 0 padding: 7px
right: 0 top: -@padding
right: -@padding
.list-body .list-body
flex: 1 flex: 1

View file

@ -14,3 +14,30 @@ template(name="editListTitleForm")
.edit-controls.clearfix .edit-controls.clearfix
button.primary.confirm(type="submit") {{_ 'save'}} button.primary.confirm(type="submit") {{_ 'save'}}
a.fa.fa-times-thin.js-close-inlined-form a.fa.fa-times-thin.js-close-inlined-form
template(name="listActionPopup")
ul.pop-over-list
li: a.js-add-card {{_ 'add-card'}}
if cards.count
li: a.js-select-cards {{_ 'list-select-cards'}}
li: a.js-move-cards {{_ 'list-move-cards'}}
li: a.js-archive-cards {{_ 'list-archive-cards'}}
hr
ul.pop-over-list
li: a.js-close-list {{_ 'archive-list'}}
template(name="listMoveCardsPopup")
+boardLists
template(name="boardLists")
ul.pop-over-list
each currentBoard.lists
li
if($eq ../_id _id)
a.disabled {{title}} ({{_ 'current'}})
else
a.js-select-list= title
template(name="listArchiveCardsPopup")
p {{_ 'list-archive-cards-pop'}}
input.js-confirm.negate.full(type="submit" value="{{_ 'archive-all'}}")

View file

@ -23,3 +23,56 @@ BlazeComponent.extendComponent({
}]; }];
} }
}).register('listHeader'); }).register('listHeader');
Template.listActionPopup.events({
'click .js-add-card': function() {
var listDom = document.getElementById('js-list-' + this._id);
var listComponent = BlazeComponent.getComponentForElement(listDom);
listComponent.openForm({ position: 'top' });
Popup.close();
},
'click .js-list-subscribe': function() {},
'click .js-select-cards': function() {
var cardIds = Cards.find(
{listId: this._id},
{fields: { _id: 1 }}
).map(function(card) { return card._id; });
MultiSelection.add(cardIds);
Popup.close();
},
'click .js-move-cards': Popup.open('listMoveCards'),
'click .js-archive-cards': Popup.afterConfirm('listArchiveCards', function() {
Cards.find({listId: this._id}).forEach(function(card) {
Cards.update(card._id, {
$set: {
archived: true
}
});
});
Popup.close();
}),
'click .js-close-list': function(evt) {
evt.preventDefault();
Lists.update(this._id, {
$set: {
archived: true
}
});
Popup.close();
}
});
Template.listMoveCardsPopup.events({
'click .js-select-list': function() {
var fromList = Template.parentData(2).data._id;
var toList = this._id;
Cards.find({listId: fromList}).forEach(function(card) {
Cards.update(card._id, {
$set: {
listId: toList
}
});
});
Popup.close();
}
});

View file

@ -1,29 +0,0 @@
template(name="listActionPopup")
ul.pop-over-list
li: a.js-add-card {{_ 'add-card'}}
li: a.highlight-icon.js-list-subscribe {{_ 'subscribe'}}
if cards.count
hr
ul.pop-over-list
li: a.js-select-cards {{_ 'list-select-cards'}}
li: a.js-move-cards {{_ 'list-move-cards'}}
li: a.js-archive-cards {{_ 'list-archive-cards'}}
hr
ul.pop-over-list
li: a.js-close-list {{_ 'archive-list'}}
template(name="listMoveCardsPopup")
+boardLists
template(name="boardLists")
ul.pop-over-list
each currentBoard.lists
li
if($eq ../_id _id)
a.disabled {{title}} ({{_ 'current'}})
else
a.js-select-list= title
template(name="listArchiveCardsPopup")
p {{_ 'list-archive-cards-pop'}}
input.js-confirm.negate.full(type="submit" value="{{_ 'archive-all'}}")

View file

@ -1,52 +0,0 @@
Template.listActionPopup.events({
'click .js-add-card': function() {
var listDom = document.getElementById('js-list-' + this._id);
var listComponent = BlazeComponent.getComponentForElement(listDom);
listComponent.openForm({ position: 'top' });
Popup.close();
},
'click .js-list-subscribe': function() {},
'click .js-select-cards': function() {
var cardIds = Cards.find(
{listId: this._id},
{fields: { _id: 1 }}
).map(function(card) { return card._id; });
MultiSelection.add(cardIds);
Popup.close();
},
'click .js-move-cards': Popup.open('listMoveCards'),
'click .js-archive-cards': Popup.afterConfirm('listArchiveCards', function() {
Cards.find({listId: this._id}).forEach(function(card) {
Cards.update(card._id, {
$set: {
archived: true
}
});
});
Popup.close();
}),
'click .js-close-list': function(evt) {
evt.preventDefault();
Lists.update(this._id, {
$set: {
archived: true
}
});
Popup.close();
}
});
Template.listMoveCardsPopup.events({
'click .js-select-list': function() {
var fromList = Template.parentData(2).data._id;
var toList = this._id;
Cards.find({listId: fromList}).forEach(function(card) {
Cards.update(card._id, {
$set: {
listId: toList
}
});
});
Popup.close();
}
});

View file

@ -99,9 +99,9 @@
"language": "Language", "language": "Language",
"leave-board": "Leave Board…", "leave-board": "Leave Board…",
"link-card": "Link to this card", "link-card": "Link to this card",
"list-move-cards": "Move All Cards in This List…", "list-move-cards": "Move all cards in this list…",
"list-select-cards": "Select All Cards in This List", "list-select-cards": "Select all cards in this list",
"list-archive-cards": "Archive All Cards in This List…", "list-archive-cards": "Archive all cards in this list…",
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view archived cards and bring them back to the board, click “Menu” > “Archived Items”.", "list-archive-cards-pop": "This will remove all the cards in this list from the board. To view archived cards and bring them back to the board, click “Menu” > “Archived Items”.",
"log-in": "Log In", "log-in": "Log In",
"loginPopup-title": "Log In", "loginPopup-title": "Log In",