diff options
-rw-r--r-- | client/components/lists/list.styl | 13 | ||||
-rw-r--r-- | client/components/lists/listHeader.jade | 15 | ||||
-rw-r--r-- | client/components/lists/listHeader.js | 20 | ||||
-rw-r--r-- | i18n/en-GB.i18n.json | 3 | ||||
-rw-r--r-- | i18n/en.i18n.json | 3 | ||||
-rw-r--r-- | i18n/pt-BR.i18n.json | 3 | ||||
-rw-r--r-- | models/lists.js | 5 |
7 files changed, 46 insertions, 16 deletions
diff --git a/client/components/lists/list.styl b/client/components/lists/list.styl index 5e20476e..4c6c792f 100644 --- a/client/components/lists/list.styl +++ b/client/components/lists/list.styl @@ -110,3 +110,16 @@ background: #fafafa color: #222 box-shadow: 0 1px 2px rgba(0,0,0,.2) + +#js-wip-limit-edit + padding-top: 2% + + p + margin-bottom: 0 + + input + display: inline-block + + .wip-limit-value + width: 20% + margin-right: 5% diff --git a/client/components/lists/listHeader.jade b/client/components/lists/listHeader.jade index 67fbe958..5d352b2e 100644 --- a/client/components/lists/listHeader.jade +++ b/client/components/lists/listHeader.jade @@ -7,10 +7,8 @@ template(name="listHeader") class="{{#if currentUser.isBoardMember}}js-open-inlined-form is-editable{{/if}}") = title if hasWipLimit - span.wip-limit - | ( - = wipLimit - | ) + span + | (#{wipLimit}) if showCardsCountForList cards.count = cards.count span.lowercase @@ -39,7 +37,7 @@ template(name="listActionPopup") li: a.js-select-cards {{_ 'list-select-cards'}} hr ul.pop-over-list - li: a.js-set-wip-limit {{#if hasWipLimit}}{{_ 'edit-wip-limit'}}{{else}}{{_ 'set-wip-limit'}}{{/if}} + li: a.js-set-wip-limit {{#if hasWipLimit}}{{_ 'edit-wip-limit'}}{{else}}{{_ 'setWipLimitPopup-title'}}{{/if}} hr ul.pop-over-list li: a.js-close-list {{_ 'archive-list'}} @@ -74,5 +72,8 @@ template(name="listDeletePopup") button.js-confirm.negate.full(type="submit") {{_ 'delete'}} template(name="setWipLimitPopup") - p {{_ 'set-wip-limit'}} - input(type="number") + #js-wip-limit-edit + lable {{_ 'set-wip-limit-value'}} + p + input.wip-limit-value(type="number" value="#{wipLimit}" min="0" max="99" onkeydown="return false") + input.wip-limit-apply(type="submit" value="{{_ 'apply'}}") diff --git a/client/components/lists/listHeader.js b/client/components/lists/listHeader.js index 47fddd27..0dc15315 100644 --- a/client/components/lists/listHeader.js +++ b/client/components/lists/listHeader.js @@ -8,6 +8,10 @@ BlazeComponent.extendComponent({ } }, + hasWipLimit() { + return this.currentData().wipLimit > 0 ? true : false; + }, + isWatching() { const list = this.currentData(); return list.findWatcher(Meteor.userId()); @@ -21,11 +25,6 @@ BlazeComponent.extendComponent({ return count > this.limitToShowCardsCount(); }, - hasWipLimit() { - return null; - //return this.currentData().wipLimit ? true : false; - }, - events() { return [{ 'click .js-open-list-menu': Popup.open('listAction'), @@ -42,6 +41,10 @@ BlazeComponent.extendComponent({ }).register('listHeader'); Template.listActionPopup.helpers({ + hasWipLimit() { + return this.wipLimit > 0 ? true : false; + }, + isWatching() { return this.findWatcher(Meteor.userId()); }, @@ -70,6 +73,13 @@ Template.listActionPopup.events({ 'click .js-more': Popup.open('listMore'), }); +Template.setWipLimitPopup.events({ + 'click .wip-limit-apply'(_, instance) { + const limit = instance.$('.wip-limit-value').val(); + this.setWipLimit(limit); + }, +}); + Template.listMorePopup.events({ 'click .js-delete': Popup.afterConfirm('listDelete', function () { Popup.close(); diff --git a/i18n/en-GB.i18n.json b/i18n/en-GB.i18n.json index 2884ea68..816d4208 100644 --- a/i18n/en-GB.i18n.json +++ b/i18n/en-GB.i18n.json @@ -307,7 +307,8 @@ "save": "Save", "search": "Search", "select-color": "Select Color", - "set-wip-limit": "Set WIP Limit", + "set-wip-limit-value": "Set a limit for the maximum number of tasks in this list:", + "setWipLimitPopup-title": "Set WIP Limit", "shortcut-assign-self": "Assign yourself to current card", "shortcut-autocomplete-emoji": "Autocomplete emoji", "shortcut-autocomplete-members": "Autocomplete members", diff --git a/i18n/en.i18n.json b/i18n/en.i18n.json index 0ccace57..139a1011 100644 --- a/i18n/en.i18n.json +++ b/i18n/en.i18n.json @@ -307,7 +307,8 @@ "save": "Save", "search": "Search", "select-color": "Select Color", - "set-wip-limit": "Set WIP Limit", + "set-wip-limit-value": "Set a limit for the maximum number of tasks in this list", + "setWipLimitPopup-title": "Set WIP Limit", "shortcut-assign-self": "Assign yourself to current card", "shortcut-autocomplete-emoji": "Autocomplete emoji", "shortcut-autocomplete-members": "Autocomplete members", diff --git a/i18n/pt-BR.i18n.json b/i18n/pt-BR.i18n.json index e40d7ed0..39bb67c1 100644 --- a/i18n/pt-BR.i18n.json +++ b/i18n/pt-BR.i18n.json @@ -307,7 +307,8 @@ "save": "Salvar", "search": "Buscar", "select-color": "Selecionar Cor", - "set-wip-limit": "Definir Limite WIP", + "set-wip-limit-value": "Defina um limite máximo para o número de tarefas nesta lista", + "setWipLimitPopup-title": "Definir Limite WIP", "shortcut-assign-self": "Atribuir a si o cartão atual", "shortcut-autocomplete-emoji": "Autocompletar emoji", "shortcut-autocomplete-members": "Preenchimento automático de membros", diff --git a/models/lists.js b/models/lists.js index 80accefb..837af73c 100644 --- a/models/lists.js +++ b/models/lists.js @@ -42,7 +42,6 @@ Lists.attachSchema(new SimpleSchema({ } }, }, - wipLimit: { type: SimpleSchema.Integer, optional: true, @@ -91,6 +90,10 @@ Lists.mutations({ restore() { return { $set: { archived: false } }; }, + + setWipLimit(limit) { + return { $set: { wipLimit: limit } }; + }, }); Lists.hookOptions.after.update = { fetchPrevious: false }; |