From 25968a35cc568e1c3f7d084632f4d2c8b41ed380 Mon Sep 17 00:00:00 2001 From: Angelo Gallarello Date: Wed, 2 Jan 2019 14:45:45 +0100 Subject: Finished triggers improvements --- client/components/rules/rulesMain.jade | 8 +--- client/components/rules/rulesMain.js | 34 ++++++++------ .../components/rules/triggers/boardTriggers.jade | 54 +++++++++++----------- client/components/rules/triggers/boardTriggers.js | 51 ++++++++++++-------- 4 files changed, 82 insertions(+), 65 deletions(-) (limited to 'client/components') diff --git a/client/components/rules/rulesMain.jade b/client/components/rules/rulesMain.jade index d01d9f77..dc33ee4e 100644 --- a/client/components/rules/rulesMain.jade +++ b/client/components/rules/rulesMain.jade @@ -6,10 +6,4 @@ template(name="rulesMain") if($eq rulesCurrentTab.get 'action') +rulesActions(ruleName=ruleName triggerVar=triggerVar) if($eq rulesCurrentTab.get 'ruleDetails') - +ruleDetails(ruleId=ruleId) - -template(name="boardCardTitlePopup") - form - label - | Card Title Filter - input.js-board-name(type="text" value=title autofocus) \ No newline at end of file + +ruleDetails(ruleId=ruleId) \ No newline at end of file diff --git a/client/components/rules/rulesMain.js b/client/components/rules/rulesMain.js index 373c7502..42116790 100644 --- a/client/components/rules/rulesMain.js +++ b/client/components/rules/rulesMain.js @@ -1,4 +1,4 @@ -BlazeComponent.extendComponent({ +let rulesMainComponent = BlazeComponent.extendComponent({ onCreated() { this.rulesCurrentTab = new ReactiveVar('rulesList'); this.ruleName = new ReactiveVar(''); @@ -9,7 +9,13 @@ BlazeComponent.extendComponent({ setTrigger() { this.rulesCurrentTab.set('trigger'); }, - + sanitizeObject(obj){ + Object.keys(obj).forEach(key =>{ + if(obj[key] == "" || obj[key] == undefined){ + obj[key] = "*"; + }} + ); + }, setRulesList() { this.rulesCurrentTab.set('rulesList'); }, @@ -31,7 +37,6 @@ BlazeComponent.extendComponent({ Triggers.remove(rule.triggerId); }, - 'click .js-open-card-title-popup': Popup.open('boardCardTitle'), 'click .js-goto-trigger' (event) { event.preventDefault(); const ruleTitle = this.find('#ruleTitle').value; @@ -46,23 +51,23 @@ BlazeComponent.extendComponent({ // Add user to the trigger const username = $(event.currentTarget.offsetParent).find(".user-name").val(); let trigger = this.triggerVar.get(); - const user = Users.findOne({"username":username}); - if(user != undefined){ - trigger["userId"] = user._id; - }else{ - trigger["userId"] = "*"; + trigger["userId"] = "*"; + if(username != undefined ){ + const userFound = Users.findOne({"username":username}); + if(userFound != undefined){ + trigger["userId"] = userFound._id; + this.triggerVar.set(trigger); + } } + // Sanitize trigger + trigger = this.triggerVar.get(); + this.sanitizeObject(trigger) this.triggerVar.set(trigger); this.setAction(); }, 'click .js-show-user-field' (event) { event.preventDefault(); - console.log(event); - console.log(event.currentTarget.offsetParent); - console.log($(event.currentTarget.offsetParent)); $(event.currentTarget.offsetParent).find(".user-details").removeClass("hide-element"); - - }, 'click .js-goto-rules' (event) { event.preventDefault(); @@ -88,3 +93,6 @@ BlazeComponent.extendComponent({ }, }).register('rulesMain'); + + + diff --git a/client/components/rules/triggers/boardTriggers.jade b/client/components/rules/triggers/boardTriggers.jade index f8767974..dae3351e 100644 --- a/client/components/rules/triggers/boardTriggers.jade +++ b/client/components/rules/triggers/boardTriggers.jade @@ -1,28 +1,12 @@ template(name="boardTriggers") - div.trigger-item + div.trigger-item#trigger-two div.trigger-content div.trigger-text - | {{_'r-when-a-card-is'}} - div.trigger-text - | {{_'r-added-to'}} - div.trigger-text - | {{_'r-the-board'}} - div.trigger-button.trigger-button-person.js-show-user-field - i.fa.fa-user - div.user-details.hide-element - div.trigger-text - | {{_'r-by'}} - div.trigger-dropdown - input(class="user-name",type=text,placeholder="{{_'r-user-name'}}") - div.trigger-button.js-add-gen-trigger.js-goto-action - i.fa.fa-plus - - div.trigger-item - div.trigger-content - div.trigger-text - | {{_'r-when-a-card-is'}} + | {{_'r-when-a-card'}} div.trigger-inline-button.js-open-card-title-popup i.fa.fa-filter + div.trigger-text + | {{_'r-is'}} div.trigger-text | {{_'r-added-to'}} div.trigger-text @@ -43,10 +27,14 @@ template(name="boardTriggers") div.trigger-button.js-add-create-trigger.js-goto-action i.fa.fa-plus - div.trigger-item + div.trigger-item#trigger-three div.trigger-content div.trigger-text - | {{_'r-when-a-card-is-moved'}} + | {{_'r-when-a-card'}} + div.trigger-inline-button.js-open-card-title-popup + i.fa.fa-filter + div.trigger-text + | {{_'r-is-moved'}} div.trigger-button.trigger-button-person.js-show-user-field i.fa.fa-user div.user-details.hide-element @@ -57,10 +45,14 @@ template(name="boardTriggers") div.trigger-button.js-add-gen-moved-trigger.js-goto-action i.fa.fa-plus - div.trigger-item + div.trigger-item#trigger-four div.trigger-content div.trigger-text - | {{_'r-when-a-card-is'}} + | {{_'r-when-a-card'}} + div.trigger-inline-button.js-open-card-title-popup + i.fa.fa-filter + div.trigger-text + | {{_'r-is'}} div.trigger-dropdown select(id="move-action") option(value="moved-to") {{_'r-moved-to'}} @@ -84,10 +76,14 @@ template(name="boardTriggers") div.trigger-button.js-add-moved-trigger.js-goto-action i.fa.fa-plus - div.trigger-item + div.trigger-item#trigger-five div.trigger-content div.trigger-text - | {{_'r-when-a-card-is'}} + | {{_'r-when-a-card'}} + div.trigger-inline-button.js-open-card-title-popup + i.fa.fa-filter + div.trigger-text + | {{_'r-is'}} div.trigger-dropdown select(id="arch-action") option(value="archived") {{_'r-archived'}} @@ -102,6 +98,12 @@ template(name="boardTriggers") div.trigger-button.js-add-arch-trigger.js-goto-action i.fa.fa-plus +template(name="boardCardTitlePopup") + form + label + | Card Title Filter + input.js-card-filter-name(type="text" value=title autofocus) + input.js-card-filter-button.primary.wide(type="submit" value="{{_ 'set-filter'}}") diff --git a/client/components/rules/triggers/boardTriggers.js b/client/components/rules/triggers/boardTriggers.js index b822d643..1a7948de 100644 --- a/client/components/rules/triggers/boardTriggers.js +++ b/client/components/rules/triggers/boardTriggers.js @@ -1,34 +1,36 @@ BlazeComponent.extendComponent({ onCreated() { - + this.provaVar = new ReactiveVar(''); + this.currentPopupTriggerId = "def"; + this.cardTitleFilters = {}; + }, + setNameFilter(name){ + this.cardTitleFilters[this.currentPopupTriggerId] = name; }, events() { return [{ - 'click .js-add-gen-trigger' (event) { - const desc = Utils.getTriggerActionDesc(event, this); - const datas = this.data(); - const boardId = Session.get('currentBoard'); - datas.triggerVar.set({ - activityType: 'createCard', - boardId, - 'listName': '*', - desc, - }); - + 'click .js-open-card-title-popup'(event){ + var funct = Popup.open('boardCardTitle'); + let divId = $(event.currentTarget.parentNode.parentNode).attr("id"); + console.log("current popup"); + console.log(this.currentPopupTriggerId); + this.currentPopupTriggerId = divId; + funct.call(this,event); }, 'click .js-add-create-trigger' (event) { const desc = Utils.getTriggerActionDesc(event, this); const datas = this.data(); const listName = this.find('#create-list-name').value; const swimlaneName = this.find('#create-swimlane-name').value; - if(swimlaneName == undefined || swimlaneName == ""){ - swimlaneName = "*"; - } const boardId = Session.get('currentBoard'); + const divId = $(event.currentTarget.parentNode).attr("id"); + const cardTitle = this.cardTitleFilters[divId]; + // move to generic funciont datas.triggerVar.set({ activityType: 'createCard', boardId, + cardTitle, swimlaneName, listName, desc, @@ -41,9 +43,6 @@ BlazeComponent.extendComponent({ const actionSelected = this.find('#move-action').value; const listName = this.find('#move-list-name').value; const boardId = Session.get('currentBoard'); - if(swimlaneName == undefined || swimlaneName == ""){ - swimlaneName = "*"; - } if (actionSelected === 'moved-to') { datas.triggerVar.set({ activityType: 'moveCard', @@ -71,8 +70,9 @@ BlazeComponent.extendComponent({ const boardId = Session.get('currentBoard'); datas.triggerVar.set({ - activityType: 'moveCard', + 'activityType': 'moveCard', boardId, + 'swimlaneName': '*', 'listName':'*', 'oldListName': '*', desc, @@ -103,3 +103,16 @@ BlazeComponent.extendComponent({ }, }).register('boardTriggers'); + + + + + +Template.boardCardTitlePopup.events({ + submit(evt, tpl) { + const title = tpl.$('.js-card-filter-name').val().trim(); + Popup.getOpenerComponent().setNameFilter(title); + evt.preventDefault(); + Popup.close(); + }, +}); -- cgit v1.2.3-1-g7c22