123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- Template.cardMembersPopup.helpers({
- isCardMember: function() {
- var cardId = Template.parentData()._id;
- var cardMembers = Cards.findOne(cardId).members || [];
- return _.contains(cardMembers, this.userId);
- },
- user: function() {
- return Users.findOne(this.userId);
- }
- });
- Template.cardLabelsPopup.helpers({
- isLabelSelected: function(cardId) {
- return _.contains(Cards.findOne(cardId).labelIds, this._id);
- }
- });
- var labelColors;
- Meteor.startup(function() {
- labelColors = Boards.simpleSchema()._schema['labels.$.color'].allowedValues;
- });
- Template.createLabelPopup.helpers({
- // This is the default color for a new label. We search the first color that
- // is not already used in the board (although it's not a problem if two
- // labels have the same color).
- defaultColor: function() {
- var labels = this.labels || this.card.board().labels;
- var usedColors = _.pluck(labels, 'color');
- var availableColors = _.difference(labelColors, usedColors);
- return availableColors.length > 1 ? availableColors[0] : 'green';
- }
- });
- Template.formLabel.helpers({
- labels: function() {
- return _.map(labelColors, function(color) {
- return { color: color, name: '' };
- });
- }
- });
- Blaze.registerHelper('currentCard', function() {
- var cardId = Session.get('currentCard');
- if (cardId) {
- return Cards.findOne(cardId);
- }
- });
|