diff --git a/client/lib/keyboard.js b/client/lib/keyboard.js index 4384fe135..ca4461930 100644 --- a/client/lib/keyboard.js +++ b/client/lib/keyboard.js @@ -8,7 +8,7 @@ function getHoveredCardId() { } function getSelectedCardId() { - return Session.get('selectedCard') || getHoveredCardId(); + return Session.get('currentCard') || getHoveredCardId(); } Mousetrap.bind('?', () => { @@ -68,6 +68,30 @@ Mousetrap.bind(['down', 'up'], (evt, key) => { } }); +numArray = _.range(1,10).map(x => String(x)) +Mousetrap.bind(numArray, (evt, key) => { + num = parseInt(key); + const cardId = getSelectedCardId(); + if (!cardId) { + return; + } + const currentBoardId = Session.get('currentBoard'); + board = Boards.findOne(currentBoardId); + labels = board.labels; + const currentUserId = Meteor.userId(); + if (currentUserId === null) { + return; + } + + if (Meteor.user().isBoardMember()) { + const card = Cards.findOne(cardId); + if(num <= board.labels.length) + { + card.toggleLabel(labels[num-1]["_id"]); + } + } +}); + Mousetrap.bind('space', evt => { const cardId = getSelectedCardId(); if (!cardId) { @@ -154,5 +178,9 @@ Template.keyboardShortcuts.helpers({ keys: ['c'], action: 'archive-card', }, + { + keys: ['number keys 1-9'], + action: 'toggle-labels' + }, ], });