diff options
Diffstat (limited to 'client/components/rules/actions')
-rw-r--r-- | client/components/rules/actions/boardActions.jade | 30 | ||||
-rw-r--r-- | client/components/rules/actions/boardActions.js | 53 | ||||
-rw-r--r-- | client/components/rules/actions/cardActions.jade | 43 | ||||
-rw-r--r-- | client/components/rules/actions/cardActions.js | 66 | ||||
-rw-r--r-- | client/components/rules/actions/checklistActions.jade | 51 | ||||
-rw-r--r-- | client/components/rules/actions/checklistActions.js | 61 | ||||
-rw-r--r-- | client/components/rules/actions/mailActions.jade | 11 | ||||
-rw-r--r-- | client/components/rules/actions/mailActions.js | 21 |
8 files changed, 320 insertions, 16 deletions
diff --git a/client/components/rules/actions/boardActions.jade b/client/components/rules/actions/boardActions.jade index fe56c3ee..81b2023d 100644 --- a/client/components/rules/actions/boardActions.jade +++ b/client/components/rules/actions/boardActions.jade @@ -4,16 +4,40 @@ template(name="boardActions") div.trigger-text | Move card to div.trigger-dropdown - select(id="action") + select(id="move-gen-action") + option(value="top") Top of + option(value="bottom") Bottom of + div.trigger-text + | its list + div.trigger-button.js-add-gen-move-action.js-goto-rules + i.fa.fa-plus + + div.trigger-item + div.trigger-content + div.trigger-text + | Move card to + div.trigger-dropdown + select(id="move-spec-action") option(value="top") Top of option(value="bottom") Bottom of div.trigger-text | list div.trigger-dropdown - input(type=text,placeholder="List Name") - div.trigger-button.js-add-move-action.js-goto-rules + input(id="listName",type=text,placeholder="List Name") + div.trigger-button.js-add-spec-move-action.js-goto-rules i.fa.fa-plus + div.trigger-item + div.trigger-content + div.trigger-dropdown + select(id="arch-action") + option(value="archive") Archive + option(value="unarchive") Unarchive + div.trigger-text + | card + div.trigger-button.js-add-arch-action.js-goto-rules + i.fa.fa-plus + diff --git a/client/components/rules/actions/boardActions.js b/client/components/rules/actions/boardActions.js index 53325ca0..94c2778d 100644 --- a/client/components/rules/actions/boardActions.js +++ b/client/components/rules/actions/boardActions.js @@ -7,23 +7,50 @@ BlazeComponent.extendComponent({ events() { return [ - {'click .js-add-move-action'(event) { - - console.log(this.data()); - console.log(this.data().triggerIdVar.get()); + {'click .js-add-spec-move-action'(event) { const ruleName = this.data().ruleName.get(); - const triggerId = this.data().triggerIdVar.get(); - const actionSelected = this.find('#action').value; - + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#move-spec-action').value; + const listTitle = this.find('#listName').value; + if(actionSelected == "top"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "moveCardToTop","listTitle":listTitle}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "bottom"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "moveCardToBottom","listTitle":listTitle}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + }, + 'click .js-add-gen-move-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#move-gen-action').value; if(actionSelected == "top"){ - Actions.insert({actionType: "moveCardToTop"},function(err,id){ - Rules.insert({title: ruleName, triggerId: triggerId, actionId: id}); - }); + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "moveCardToTop","listTitle":"*"}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); } if(actionSelected == "bottom"){ - Actions.insert({actionType: "moveCardToBottom"},function(err,id){ - Rules.insert({title: ruleName, triggerId: triggerId, actionId: id}); - }); + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "moveCardToBottom","listTitle":"*"}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + }, + 'click .js-add-arch-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#arch-action').value; + if(actionSelected == "archive"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "archive"}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "unarchive"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "unarchive"}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); } }, }]; diff --git a/client/components/rules/actions/cardActions.jade b/client/components/rules/actions/cardActions.jade new file mode 100644 index 00000000..8d218a49 --- /dev/null +++ b/client/components/rules/actions/cardActions.jade @@ -0,0 +1,43 @@ +template(name="cardActions") + div.trigger-item + div.trigger-content + div.trigger-dropdown + select(id="label-action") + option(value="add") Add + option(value="remove") Remove + div.trigger-text + | label + div.trigger-dropdown + select(id="label-id") + each labels + option(value="#{_id}") + = name + div.trigger-button.js-add-label-action.js-goto-rules + i.fa.fa-plus + + div.trigger-item + div.trigger-content + div.trigger-dropdown + select(id="member-action") + option(value="add") Add + option(value="remove") Removed + div.trigger-text + | member + div.trigger-dropdown + input(id="member-name",type=text,placeholder="Member name") + div.trigger-button.js-add-member-action.js-goto-rules + i.fa.fa-plus + + div.trigger-item + div.trigger-content + div.trigger-text + | Remove all member from the card + div.trigger-button.js-add-removeall-action.js-goto-rules + i.fa.fa-plus + + + + + + + diff --git a/client/components/rules/actions/cardActions.js b/client/components/rules/actions/cardActions.js new file mode 100644 index 00000000..48120d91 --- /dev/null +++ b/client/components/rules/actions/cardActions.js @@ -0,0 +1,66 @@ +BlazeComponent.extendComponent({ + onCreated() { + this.subscribe('allRules'); + }, + + labels(){ + const labels = Boards.findOne(Session.get('currentBoard')).labels; + console.log(labels); + for(let i = 0;i<labels.length;i++){ + if(labels[i].name == "" || labels[i].name == undefined){ + labels[i].name = labels[i].color.toUpperCase(); + } + } + console.log(labels); + return labels; + }, + + + + events() { + return [ + {'click .js-add-label-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#label-action').value; + const labelId = this.find('#label-id').value; + + if(actionSelected == "add"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "addLabel","labelId":labelId}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "remove"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "removeLabel","labelId":labelId}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + + }, + 'click .js-add-member-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#member-action').value; + const memberName = this.find('#member-name').value; + if(actionSelected == "add"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "addMember","memberName":memberName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "remove"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "removeMember","memberName":memberName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + }, + 'click .js-add-removeall-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "removeMember","memberName":"*"}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + }, + }]; +}, + +}).register('cardActions');
\ No newline at end of file diff --git a/client/components/rules/actions/checklistActions.jade b/client/components/rules/actions/checklistActions.jade new file mode 100644 index 00000000..c85ec078 --- /dev/null +++ b/client/components/rules/actions/checklistActions.jade @@ -0,0 +1,51 @@ +template(name="checklistActions") + div.trigger-item + div.trigger-content + div.trigger-dropdown + select(id="check-action") + option(value="add") Add + option(value="remove") Remove + div.trigger-text + | checklist + div.trigger-dropdown + input(id="checklist-name",type=text,placeholder="name") + div.trigger-button.js-add-checklist-action.js-goto-rules + i.fa.fa-plus + + div.trigger-item + div.trigger-content + div.trigger-dropdown + select(id="checkall-action") + option(value="check") Check all + option(value="uncheck") Unchek all + div.trigger-text + | items of checklist + div.trigger-dropdown + input(id="checklist-name2",type=text,placeholder="name") + div.trigger-button.js-add-checkall-action.js-goto-rules + i.fa.fa-plus + + + div.trigger-item + div.trigger-content + div.trigger-dropdown + select(id="check-item-action") + option(value="check") Check + option(value="uncheck") Unchek + div.trigger-text + | item + div.trigger-dropdown + input(id="checkitem-name",type=text,placeholder="name") + div.trigger-text + | of checklist + div.trigger-dropdown + input(id="checklist-name3",type=text,placeholder="name") + div.trigger-button.js-add-check-item-action.js-goto-rules + i.fa.fa-plus + + + + + + + diff --git a/client/components/rules/actions/checklistActions.js b/client/components/rules/actions/checklistActions.js new file mode 100644 index 00000000..2a70ca7f --- /dev/null +++ b/client/components/rules/actions/checklistActions.js @@ -0,0 +1,61 @@ +BlazeComponent.extendComponent({ + onCreated() { + this.subscribe('allRules'); + }, + events() { + return [ + {'click .js-add-checklist-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#check-action').value; + const checklistName = this.find('#checklist-name').value; + + if(actionSelected == "add"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "addChecklist","checklistName":checklistName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "remove"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "removeChecklist","checklistName":checklistName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + + }, + 'click .js-add-checkall-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const actionSelected = this.find('#checkall-action').value; + const checklistName = this.find('#checklist-name2').value; + if(actionSelected == "check"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "checkAll","checklistName":checklistName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "uncheck"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "uncheckAll","checklistName":checklistName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + }, + 'click .js-add-check-item-action'(event) { + const ruleName = this.data().ruleName.get(); + const trigger = this.data().triggerVar.get(); + const checkItemName = this.find("#checkitem-name"); + const checklistName = this.find("#checklist-name3"); + const actionSelected = this.find('#check-item-action').value; + if(actionSelected == "check"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "checkItem","checklistName":checklistName,"checkItemName":checkItemName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } + if(actionSelected == "uncheck"){ + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "uncheckItem","checklistName":checklistName,"checkItemName":checkItemName}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + } +}, +}]; +}, + +}).register('checklistActions');
\ No newline at end of file diff --git a/client/components/rules/actions/mailActions.jade b/client/components/rules/actions/mailActions.jade new file mode 100644 index 00000000..5680d430 --- /dev/null +++ b/client/components/rules/actions/mailActions.jade @@ -0,0 +1,11 @@ +template(name="mailActions") + div.trigger-item.trigger-item-mail + div.trigger-content.trigger-content-mail + div.trigger-text.trigger-text-email + | Send an email + div.trigger-dropdown-mail + input(id="email-to",type=text,placeholder="to") + input(id="email-subject",type=text,placeholder="subject") + textarea(id="email-msg") + div.trigger-button.trigger-button-email.js-mail-action.js-goto-rules + i.fa.fa-plus
\ No newline at end of file diff --git a/client/components/rules/actions/mailActions.js b/client/components/rules/actions/mailActions.js new file mode 100644 index 00000000..0e4b539e --- /dev/null +++ b/client/components/rules/actions/mailActions.js @@ -0,0 +1,21 @@ +BlazeComponent.extendComponent({ + onCreated() { + + }, + + events() { + return [ + {'click .js-mail-action'(event) { + const emailTo = this.find('#email-to').value; + const emailSubject = this.find('#email-subject').value; + const emailMsg = this.find('#email-msg').value; + const trigger = this.data().triggerVar.get(); + const ruleName = this.data().ruleName.get(); + const triggerId = Triggers.insert(trigger); + const actionId = Actions.insert({actionType: "sendEmail","emailTo":emailTo,"emailSubject":emailSubject,"emailMsg":emailMsg}); + Rules.insert({title: ruleName, triggerId: triggerId, actionId: actionId}); + }, + }]; +}, + +}).register('mailActions');
\ No newline at end of file |