wekan/client/components/rules/triggers/boardTriggers.js

117 lines
3.3 KiB
JavaScript
Raw Normal View History

Template.boardTriggers.onCreated(function () {
this.provaVar = new ReactiveVar('');
this.currentPopupTriggerId = 'def';
this.cardTitleFilters = {};
this.setNameFilter = (name) => {
2019-06-28 12:52:09 -05:00
this.cardTitleFilters[this.currentPopupTriggerId] = name;
};
});
2018-08-15 18:47:09 +02:00
Template.boardTriggers.events({
'click .js-open-card-title-popup'(event, tpl) {
const funct = Popup.open('boardCardTitle');
const divId = $(event.currentTarget.parentNode.parentNode).attr('id');
tpl.currentPopupTriggerId = divId;
funct.call(this, event);
},
'click .js-add-create-trigger'(event, tpl) {
const desc = Utils.getTriggerActionDesc(event, tpl);
const datas = Template.currentData();
const listName = tpl.find('#create-list-name').value;
const swimlaneName = tpl.find('#create-swimlane-name').value;
const boardId = Session.get('currentBoard');
const divId = $(event.currentTarget.parentNode).attr('id');
const cardTitle = tpl.cardTitleFilters[divId];
// move to generic funciont
datas.triggerVar.set({
activityType: 'createCard',
boardId,
cardTitle,
swimlaneName,
listName,
desc,
});
},
'click .js-add-moved-trigger'(event, tpl) {
const datas = Template.currentData();
const desc = Utils.getTriggerActionDesc(event, tpl);
const swimlaneName = tpl.find('#create-swimlane-name-2').value;
const actionSelected = tpl.find('#move-action').value;
const listName = tpl.find('#move-list-name').value;
const boardId = Session.get('currentBoard');
const divId = $(event.currentTarget.parentNode).attr('id');
const cardTitle = tpl.cardTitleFilters[divId];
if (actionSelected === 'moved-to') {
datas.triggerVar.set({
activityType: 'moveCard',
boardId,
listName,
cardTitle,
swimlaneName,
oldListName: '*',
desc,
});
}
if (actionSelected === 'moved-from') {
datas.triggerVar.set({
activityType: 'moveCard',
boardId,
cardTitle,
swimlaneName,
listName: '*',
oldListName: listName,
desc,
});
}
},
'click .js-add-gen-moved-trigger'(event, tpl) {
const datas = Template.currentData();
const desc = Utils.getTriggerActionDesc(event, tpl);
const boardId = Session.get('currentBoard');
2018-09-21 17:20:45 +02:00
datas.triggerVar.set({
activityType: 'moveCard',
boardId,
swimlaneName: '*',
listName: '*',
oldListName: '*',
desc,
});
2018-08-15 18:47:09 +02:00
},
'click .js-add-arc-trigger'(event, tpl) {
const datas = Template.currentData();
const desc = Utils.getTriggerActionDesc(event, tpl);
const actionSelected = tpl.find('#arch-action').value;
const boardId = Session.get('currentBoard');
if (actionSelected === 'archived') {
datas.triggerVar.set({
activityType: 'archivedCard',
boardId,
desc,
});
}
if (actionSelected === 'unarchived') {
datas.triggerVar.set({
activityType: 'restoredCard',
boardId,
desc,
});
}
},
});
2019-01-02 14:45:45 +01:00
Template.boardCardTitlePopup.events({
submit(event) {
const title = $(event.target)
.find('.js-card-filter-name')
2019-06-28 12:52:09 -05:00
.val()
.trim();
const opener = Popup.getOpenerComponent();
if (opener?.setNameFilter) {
opener.setNameFilter(title);
}
2019-06-28 12:52:09 -05:00
event.preventDefault();
Popup.back();
2019-01-02 14:45:45 +01:00
},
});