processmaker-builder
Version:
The gulp task runner for ProcessMaker building
968 lines (902 loc) • 92.5 kB
JavaScript
(function () {
$ctrlSpaceMessage = $("<p class='ctrlSpaceMessage'>" + "Press".translate() + " <strong>ctrl+space</strong> " + "to get the function list".translate() + ".</p>");
var btnCopyImport, openFormCustom, formEditTriggerCustom;
var triggerOriginDataForUpdate = {};
PMDesigner.trigger = function (event) {
var listTriggers,
clickedClose = true,
message_ErrorWindow,
flagChanges,
isDirtyFormTrigger,
gridListTrigger,
getListTrigger,
addNumberTriggerWizard,
newTriggerOptions,
allTreesItems,
buttonNew,
buttonCopy,
buttonWizard,
openListTriggers,
openFormWizard,
openFormWizardEditMode,
openFormCopy,
openFormEditCode,
openNewTriggerOptions,
listProjects,
getListProjects,
triggerSelectedData,
formCopyTrigger,
codMirr,
formEditTriggerWizard,
sepInputs,
labelInputs,
paramPanel,
sepOutputs,
labelOutputs,
returnPanel,
parameterItems,
returnItems,
treeNewTrigger,
accordionNewTrigger,
updateCustom,
checkIfValuesAreEqual,
buttonSave,
copyButton,
applyButton,
btnEditSourceCode,
buttonCancel,
editCode,
formEditCode,
triggerWindow,
formcustom;
message_ErrorWindow = new PMUI.ui.MessageWindow({
id: "errorMessage",
width: 490,
windowMessageType: 'error',
title: "Triggers".translate(),
message: "This is an error message.".translate(),
footerItems: [
{
text: 'OK'.translate(),
handler: function () {
message_ErrorWindow.close();
},
buttonType: "success"
}
]
});
isDirtyFormTrigger = function () {
$("input,select,textarea").blur();
$("div.pmui-window-body.pmui-background").css('overflow', '');
var formcustom = triggerWindow.getItems()[1];
var formwizard = triggerWindow.getItems()[2];
var formcopy = triggerWindow.getItems()[3];
var formeditcode = triggerWindow.getItems()[4];
var accordionnewtrigger = triggerWindow.getItems()[5];
var flag = false;
var finalData = {
tri_uid: getData2PMUI(formEditTriggerCustom.html).uid,
tri_title: getData2PMUI(formEditTriggerCustom.html).title,
tri_description: getData2PMUI(formEditTriggerCustom.html).description,
tri_webbot: getData2PMUI(formEditTriggerCustom.html).code
};
if (formcustom.isVisible() == true) {
flag = (checkIfValuesAreEqual(triggerOriginDataForUpdate, finalData)) ? false : true;
} else if (formwizard.isVisible() == true) {
flag = formEditTriggerWizard.isDirty();
} else if (formcopy.isVisible() == true) {
flag = formCopyTrigger.isDirty();
if (!flag) {
$('.ctrlSpaceMessage').remove();
}
} else if (formeditcode.isVisible() == true) {
flag = formeditcode.isDirty();
var flagFormCustom = (checkIfValuesAreEqual(triggerOriginDataForUpdate, finalData)) ? false : true;
if (!flag && formeditcode.getItems()[0].controls[0].value != "" || flagFormCustom) {
flag = true;
}
}
if (flag == true) {
var message_window = new PMUI.ui.MessageWindow({
id: "cancelMessageTriggers",
title: "Triggers".translate(),
windowMessageType: 'warning',
width: 490,
message: 'Are you sure you want to discard your changes?'.translate(),
footerItems: [
{
text: "No".translate(),
handler: function () {
message_window.close();
},
buttonType: "error"
}, {
text: "Yes".translate(),
handler: function () {
triggerOriginDataForUpdate = {};
var formcustom = triggerWindow.getItems()[1];
var formwizard = triggerWindow.getItems()[2];
var formcopy = triggerWindow.getItems()[3];
var formeditcode = triggerWindow.getItems()[4];
if (formcustom.isVisible() == true) {
var uidInForm = formEditTriggerCustom.getFields()[0].getValue();
formEditTriggerCustom.reset();
openListTriggers();
} else if (formwizard.isVisible() == true) {
var uidInForm = formEditTriggerWizard.getFields()[0].getValue();
formEditTriggerWizard.reset();
openListTriggers();
} else if (formcopy.isVisible() == true) {
$('.ctrlSpaceMessage').remove();
formCopyTrigger.reset();
openListTriggers();
} else if (formeditcode.isVisible() == true) {
formeditcode.reset();
openFormCustom("Edit".translate());
}
message_window.close();
if (clickedClose) {
triggerWindow.close();
}
},
buttonType: "success"
}
]
});
message_window.open();
message_window.showFooter();
} else {
var formcustom = triggerWindow.getItems()[1];
var formwizard = triggerWindow.getItems()[2];
var formcopy = triggerWindow.getItems()[3];
var formeditcode = triggerWindow.getItems()[4];
var accordionnewtrigger = triggerWindow.getItems()[5];
if (formcustom.isVisible() == true) {
var uidInForm = formEditTriggerCustom.getFields()[0].getValue();
formEditTriggerCustom.reset();
openListTriggers();
} else if (formwizard.isVisible() == true) {
var uidInForm = formEditTriggerWizard.getFields()[0].getValue();
formEditTriggerWizard.reset();
openListTriggers();
} else if (formcopy.isVisible() == true) {
formCopyTrigger.reset();
openListTriggers();
} else if (formeditcode.isVisible() == true) {
formeditcode.reset();
openFormCustom("Edit".translate());
} else if (accordionnewtrigger.isVisible() == true) {
openListTriggers();
}
if (clickedClose) {
triggerWindow.close();
}
}
};
//GRID List Case Scheduler
gridListTrigger = new PMUI.grid.GridPanel({
id: "listTriggers",
pageSize: 10,
width: "96%",
style: {
cssClasses: ["mafe-gridPanel"]
},
filterPlaceholder: 'Search ...'.translate(),
nextLabel: 'Next'.translate(),
previousLabel: 'Previous'.translate(),
tableContainerHeight: 374,
customStatusBar: function (currentPage, pageSize, numberItems, criteria, filter) {
return messagePageGrid(currentPage, pageSize, numberItems, criteria, filter);
},
columns: [
{
id: 'listTriggersButtonShow',
title: '',
dataType: 'button',
searchable: false,
buttonLabel: 'Show ID'.translate(),
buttonStyle: {
cssClasses: [
'mafe-button-show'
]
},
id: 'copyuid',
onButtonClick: function (row, grid) {
var dataRow = row.getData();
messageWindow = new PMUI.ui.MessageWindow({
id: 'dynaformMessageWindowUID',
windowMessageType: 'info',
width: 490,
title: "Triggers".translate(),
message: dataRow.tri_uid,
footerItems: [
{
text: 'OK'.translate(),
handler: function () {
messageWindow.close();
},
buttonType: "success"
}
]
});
messageWindow.setTitle("ID".translate());
messageWindow.open();
messageWindow.showFooter();
$(messageWindow.dom.icon).removeClass();
}
},
{
title: 'Title'.translate(),
id: "title",
dataType: 'string',
width: "407px",
visible: true,
columnData: "tri_title",
searcheable: true,
sortable: true,
alignmentCell: 'left'
},
{
title: 'Type'.translate(),
id: "type",
dataType: 'string',
width: "225px",
visible: true,
alignmentCell: 'left',
columnData: function (data) {
if (typeof(data.tri_param) == "object" && typeof(data.tri_param.params) == "object") {
var wizardData = data.tri_param.params;
return wizardData.LIBRARY_NAME;
} else {
return "Custom";
}
},
searcheable: true,
sortable: true
},
{
id: "editButton",
title: '',
dataType: 'button',
messageTooltip: "Edit".translate(),
buttonLabel: "Edit".translate(),
buttonStyle: {
cssClasses: [
'mafe-button-edit'
]
},
onButtonClick: function (row, grid) {
triggerOriginDataForUpdate = {};
var data = row.getData();
triggerOriginDataForUpdate = data;
var fields;
if (data.tri_param == "") {
openFormCustom("Edit".translate());
formEditTriggerCustom.showFooter();
var codeMirrorControl, cmControlCopyTrigger;
codeMirrorControl = formEditTriggerCustom.getItems()[1].controls[0].cm;
if (codeMirrorControl != undefined) {
codeMirrorControl.setSize(580, 160);
}
formEditTriggerCustom.getItems()[1].setHeight(170);
fields = formEditTriggerCustom.getItems()[0];
fields.getItems()[0].setValue(data.tri_uid);
fields.getItems()[1].setValue(data.tri_title);
fields.getItems()[2].setValue(data.tri_description);
formEditTriggerCustom.getItems()[1].setValue(data.tri_webbot);
codeMirrorControl.setValue(data.tri_webbot);
codeMirrorControl.refresh();
} else {
openFormWizardEditMode();
var wizardData = data.tri_param.params;
var lib = wizardData.LIBRARY_CLASS;
lib = lib.split('.');
lib = lib[1];
fields = formEditTriggerWizard.getFields();
fields[0].setValue(data.tri_uid);
fields[1].setValue(lib);
fields[2].setValue(wizardData.PMFUNTION_NAME);
fields[3].setValue(wizardData.LIBRARY_NAME + " (" + wizardData.PMFUNTION_LABEL + ")");
fields[4].setValue(data.tri_title);
fields[5].setValue(data.tri_description);
fields[6].setValue(data.tri_webbot);
var inputItems = [];
var outputItems = [];
restClient = new PMRestClient({
endpoint: "trigger-wizard/" + lib + "/" + wizardData.PMFUNTION_NAME,
typeRequest: 'get',
functionSuccess: function (xhr, response) {
if (response.fn_params.input != undefined) {
for (j = 0; j < response.fn_params.input.length; j++) {
var nameInput = response.fn_params.input[j].name;
var inp = new CriteriaField({
id: nameInput,
pmType: "text",
name: nameInput,
label: response.fn_params.input[j].label,
value: wizardData[nameInput].toString(),
controlsWidth: 400,
labelWidth: '27%',
helper: response.fn_params.input[j].description,
required: response.fn_params.input[j].name === "unpauseDate" ? true : response.fn_params.input[j].required
});
inputItems.push(inp);
}
}
if (response.fn_params.output != undefined) {
for (k = 0; k < response.fn_params.output.length; k++) {
var nameOutput = response.fn_params.output[k].name;
var out = new CriteriaField({
id: nameOutput,
pmType: "text",
name: nameOutput,
label: response.fn_params.output[k].label,
value: wizardData.TRI_ANSWER.toString(),
controlsWidth: 400,
labelWidth: '27%',
helper: response.fn_params.output[k].description,
required: response.fn_params.output[k].required
});
outputItems.push(out);
}
}
triggerWindow.setTitle("Edit".translate() + " " + wizardData.LIBRARY_NAME);
if (inputItems.length > 0) {
formEditTriggerWizard.getItems()[1].setVisible(true);
formEditTriggerWizard.getItems()[2].setVisible(true);
formEditTriggerWizard.getItems()[3].setVisible(true);
formEditTriggerWizard.getItems()[3].clearItems();
formEditTriggerWizard.getItems()[3].setItems(inputItems);
} else {
formEditTriggerWizard.getItems()[1].setVisible(false);
formEditTriggerWizard.getItems()[2].setVisible(false);
formEditTriggerWizard.getItems()[3].setVisible(false);
formEditTriggerWizard.getItems()[3].clearItems();
}
if (outputItems.length > 0) {
formEditTriggerWizard.getItems()[4].setVisible(true);
formEditTriggerWizard.getItems()[5].setVisible(true);
formEditTriggerWizard.getItems()[6].setVisible(true);
formEditTriggerWizard.getItems()[6].clearItems();
formEditTriggerWizard.getItems()[6].setItems(outputItems);
} else {
formEditTriggerWizard.getItems()[4].setVisible(false);
formEditTriggerWizard.getItems()[5].setVisible(false);
formEditTriggerWizard.getItems()[6].setVisible(false);
formEditTriggerWizard.getItems()[6].clearItems();
}
labelInputs.dom.labelTextContainer.style.display = "none";
labelOutputs.dom.labelTextContainer.style.display = "none";
},
functionFailure: function (xhr, response) {
PMDesigner.msgWinError(response.error.message);
},
messageError: "There are problems getting the triggers wizard list, please try again.".translate()
});
restClient.executeRestClient();
}
}
},
{
id: "deleteButton",
title: '',
dataType: 'button',
messageTooltip: "Delete".translate(),
buttonLabel: "Delete".translate(),
buttonStyle: {
cssClasses: [
'mafe-button-delete'
]
},
onButtonClick: function (row, grid) {
var questionWindow, dataRow = row.getData();
questionWindow = new PMUI.ui.MessageWindow({
id: "questionDeleteWindow",
title: "Triggers".translate(),
windowMessageType: 'warning',
width: 490,
message: "Do you want to delete this Trigger?".translate(),
footerItems: [
{
id: 'questionDeleteWindowButtonNo',
text: "No".translate(),
visible: true,
handler: function () {
questionWindow.close();
},
buttonType: "error"
}, {
id: 'questionDeleteWindowButtonYes',
text: "Yes".translate(),
visible: true,
handler: function () {
questionWindow.close();
restClient = new PMRestClient({
endpoint: "trigger/" + dataRow.tri_uid,
typeRequest: 'remove',
functionSuccess: function (xhr, response) {
grid.removeItem(row);
},
functionFailure: function (xhr, response) {
PMDesigner.msgWinError(response.error.message);
},
messageSuccess: "Trigger deleted successfully".translate(),
flashContainer: gridListTrigger
});
restClient.executeRestClient();
},
buttonType: "success"
},
]
});
questionWindow.open();
questionWindow.dom.titleContainer.style.height = "17px";
questionWindow.showFooter();
}
}
],
dataItems: listTriggers,
onRowClick: function (row, data) {
}
});
getListTrigger = function () {
var restClient = new PMRestClient({
endpoint: 'triggers',
typeRequest: 'get',
functionSuccess: function (xhr, response) {
listTriggers = response;
gridListTrigger.setDataItems(listTriggers);
},
functionFailure: function (xhr, response) {
PMDesigner.msgWinError(response.error.message);
},
messageError: "There are problems getting the Triggers list, please try again.".translate()
});
restClient.executeRestClient();
};
addNumberTriggerWizard = function (value, position) {
coutTriggers = document.createElement("span");
coutTriggers.textContent = value;
headerAccordion = triggerWindow.getItems()[5].getItems()[position].header.html;
headerAccordion.appendChild(coutTriggers);
coutTriggers.style.float = "right";
coutTriggers.style.color = "white";
coutTriggers.style.fontSize = "13px";
coutTriggers.style.marginRight = "6px";
coutTriggers.style.marginTop = "3px";
};
newTriggerOptions = function () {
var acItemCustom = accordionNewTrigger.getItems()[0];
var acItemCopy = accordionNewTrigger.getItems()[1];
acItemCustom.setIconClosed('pmcustomtrigger');
acItemCustom.setIconExpanded('pmcustomtrigger');
acItemCopy.setIconClosed('pmcopytrigger');
acItemCopy.setIconExpanded('pmcopytrigger');
var itemCustom = jQuery("#custom > .pmui-accordion-item-header > span")[1];
itemCustom.style.width = "0px";
var itemCopy = jQuery("#copy > .pmui-accordion-item-header > span")[1];
itemCopy.style.width = "0px";
var numOfItems = accordionNewTrigger.getItems();
var lengthLibFunctions = [];
if (numOfItems.length <= 2) {
restClient = new PMRestClient({
endpoint: "trigger-wizards",
typeRequest: 'get',
functionSuccess: function (xhr, response) {
for (i = 0; i < response.length; i++) {
var functTree = response[i].lib_functions;
lengthLibFunctions[i] = functTree.length;
var newTreeItems = [];
for (h = 0; h < functTree.length; h++) {
newTreeItems.push({
label: functTree[h].fn_label,
id: functTree[h].fn_name,
onClick: function () {
for (s = 0; s < response.length; s++) {
for (p = 0; p < response[s].lib_functions.length; p++) {
if (response[s].lib_functions[p].fn_name == this.id) {
var fn = response[s].lib_functions[p].fn_params;
var fnLabel = response[s].lib_functions[p].fn_label;
var fnName = response[s].lib_functions[p].fn_name;
var libName = response[s].lib_name;
var libTitle = response[s].lib_title;
p = response[s].lib_functions.length;
s = response.length - 1;
}
}
}
var inputItems = [];
if (fn.input != undefined) {
for (j = 0; j < fn.input.length; j++) {
var val = "";
if (fn.input[j].type == "array") {
val = "array('')";
}
var inp = new CriteriaField({
id: fn.input[j].name,
pmType: "text",
name: fn.input[j].name,
label: fn.input[j].label,
controlsWidth: 400,
labelWidth: '27%',
value: val,
helper: fn.input[j].description,
required: fn.input[j].name === "unpauseDate" ? true : fn.input[j].required
});
inputItems.push(inp);
}
}
var outputItems = [];
if (fn.output != undefined) {
for (k = 0; k < fn.output.length; k++) {
var out = new CriteriaField({
id: fn.output[k].name,
pmType: "text",
name: fn.output[k].name,
label: fn.output[k].label,
controlsWidth: 400,
labelWidth: '27%',
helper: fn.output[k].description,
required: fn.output[k].required
});
outputItems.push(out);
}
}
formEditTriggerWizard.reset();
formEditTriggerWizard.setTitle(fnLabel + ' (' + fnName + ')');
formEditTriggerWizard.getItems()[0].getItems()[1].setValue(libName);
formEditTriggerWizard.getItems()[0].getItems()[2].setValue(fnName);
formEditTriggerWizard.getItems()[0].getItems()[3].setValue(libTitle + ' (' + fnLabel + ')');
if (inputItems.length > 0) {
formEditTriggerWizard.getItems()[1].setVisible(true);
formEditTriggerWizard.getItems()[2].setVisible(true);
formEditTriggerWizard.getItems()[3].setVisible(true);
formEditTriggerWizard.getItems()[3].clearItems();
formEditTriggerWizard.getItems()[3].setItems(inputItems);
} else {
formEditTriggerWizard.getItems()[1].setVisible(false);
formEditTriggerWizard.getItems()[2].setVisible(false);
formEditTriggerWizard.getItems()[3].setVisible(false);
formEditTriggerWizard.getItems()[3].clearItems();
}
if (outputItems.length > 0) {
formEditTriggerWizard.getItems()[4].setVisible(true);
formEditTriggerWizard.getItems()[5].setVisible(true);
formEditTriggerWizard.getItems()[6].setVisible(true);
formEditTriggerWizard.getItems()[6].clearItems();
formEditTriggerWizard.getItems()[6].setItems(outputItems);
} else {
formEditTriggerWizard.getItems()[4].setVisible(false);
formEditTriggerWizard.getItems()[5].setVisible(false);
formEditTriggerWizard.getItems()[6].setVisible(false);
formEditTriggerWizard.getItems()[6].clearItems();
}
openFormWizard();
$('.pmui-pmseparatorlinefield .pmui-field-label').css({display: 'none'});
triggerWindow.setTitle("Create".translate() + " " + libTitle);
}
});
}
labelInputs.dom.labelTextContainer.style.display = "none";
labelOutputs.dom.labelTextContainer.style.display = "none";
allTreesItems[i] = newTreeItems;
var arrayTriggerWizards = [
"pmFunctions",
"pmSugar",
"pmTalend",
"pmTrAlfresco",
"pmTrSharepoint",
"pmZimbra"
];
if (arrayTriggerWizards.indexOf(response[i].lib_name) == -1) {
$("head").append("<style type=\"text/css\">." + response[i].lib_name + " {background: url(" + response[i].lib_icon + ") no-repeat 50% 50%;}</style>");
}
//Accordion
var newAccordionItem = [];
newAccordionItem = {
iconClass: response[i].lib_name,
id: response[i].lib_name,
title: response[i].lib_title,
height: 'auto'
};
accordionNewTrigger.addItem(newAccordionItem);
}
},
functionFailure: function (xhr, response) {
PMDesigner.msgWinError(response.error.message);
},
messageError: "There are problems getting the triggers wizard list, please try again.".translate()
});
restClient.executeRestClient();
}
openNewTriggerOptions();
var accordion = triggerWindow.getItems()[5].getItems();
accordion[0].setVisible(false);
accordion[1].setVisible(false);
for (i = 0; i < accordion.length; i++) {
accordion[i].header.html.style.backgroundColor = "#FFFFFF";
if (i > 1) {
addNumberTriggerWizard(lengthLibFunctions[i - 2], (i));
}
}
};
allTreesItems = [];
getListTrigger();
//Button NEW Trigger
buttonNew = new PMUI.ui.Button({
id: 'newTriggerButton',
text: "Create".translate(),
height: "36px",
width: 100,
handler: function (event) {
openFormCustom("Create".translate());
formEditTriggerCustom.getField("code").dom.labelTextContainer.style.width = "23.8%";
$('.pmui-pmseparatorlinefield .pmui-field-label').css({display: 'none'});
formEditTriggerCustom.showFooter();
var codeMirrorControl, cmControlCopyTrigger;
codeMirrorControl = formEditTriggerCustom.getItems()[1].controls[0].cm;
formEditTriggerCustom.getItems()[1].html.style.padding = "10px";
if (codeMirrorControl !== undefined) {
codeMirrorControl.setSize(580, 150);
}
formEditTriggerCustom.getItems()[1].setHeight(170);
formEditTriggerCustom.reset();
fields = formEditTriggerCustom.getItems()[0];
fields.getItems()[0].setValue("");
fields.getItems()[1].setValue("");
fields.getItems()[2].setValue("");
formEditTriggerCustom.getItems()[1].setValue("");
formEditTriggerCustom.getItems()[1].controls[0].cm.setValue("");
codeMirrorControl.refresh();
},
style: {
cssClasses: [
'mafe-button-create'
]
}
});
//Button COPY Trigger
buttonCopy = new PMUI.ui.Button({
id: 'copyTriggerButton',
text: "Copy".translate(),
height: "36px",
width: 100,
handler: function (event) {
getListProjects();
openFormCopy();
formCopyTrigger.getFields()[1].clearOptions();
$("#Code .CodeMirror.cm-s-default.CodeMirror-wrap").css({'border': '1px solid #c0c0c0'});
formCopyTrigger.getItems()[4].setHeight(160);
var cmControlCopyTrigger = formCopyTrigger.getFields()[4].controls[0].cm;
cmControlCopyTrigger.setValue("");
if (cmControlCopyTrigger !== undefined) {
cmControlCopyTrigger.setSize(650, 140);
}
cmControlCopyTrigger.refresh();
},
style: {
cssClasses: [
'mafe-button-create'
]
}
});
//Button WIZARD Trigger
buttonWizard = new PMUI.ui.Button({
id: 'wizardTriggerButton',
text: "Wizard".translate(),
height: "36px",
width: 100,
handler: function (event) {
newTriggerOptions();
},
style: {
cssClasses: [
'mafe-button-create'
]
}
});
openListTriggers = function () {
triggerWindow.getItems()[0].setVisible(true);
triggerWindow.getItems()[1].setVisible(false);
triggerWindow.getItems()[2].setVisible(false);
triggerWindow.getItems()[3].setVisible(false);
triggerWindow.getItems()[4].setVisible(false);
triggerWindow.getItems()[5].setVisible(false);
triggerWindow.setTitle("Triggers".translate());
triggerWindow.hideFooter();
$(triggerWindow.body).removeClass("pmui-background");
};
openFormCustom = function (typeTitle) {
triggerWindow.getItems()[0].setVisible(false);
triggerWindow.getItems()[1].setVisible(true);
triggerWindow.getItems()[2].setVisible(false);
triggerWindow.getItems()[3].setVisible(false);
triggerWindow.getItems()[4].setVisible(false);
triggerWindow.getItems()[5].setVisible(false);
triggerWindow.footer.getItems()[0].setVisible(true); //button Cancel
triggerWindow.footer.getItems()[1].setVisible(true); //button Save
triggerWindow.footer.getItems()[2].setVisible(false); //Edit Source Code
triggerWindow.footer.getItems()[3].setVisible(false); //button Aply
triggerWindow.footer.getItems()[4].setVisible(false); //button Copy/import
triggerWindow.setTitle(typeTitle + " Custom Trigger".translate());
triggerWindow.showFooter();
$(triggerWindow.body).addClass("pmui-background");
formEditTriggerCustom.setFocus();
$('.CodeMirror.cm-s-default')[0].style.border = "1px solid #c0c0c0";
if (formEditTriggerCustom.getItems()[0].getItems()[1].visible == false) {
var fields = formEditTriggerCustom.getItems()[0];
fields.getItems()[1].setVisible(true);
fields.getItems()[2].setVisible(true);
formEditTriggerCustom.footer.getItems()[1].setVisible(true);
}
formEditTriggerCustom.getFields()[4].dom.labelTextContainer.style.marginLeft = "10px";
formEditTriggerCustom.setAlignmentButtons('left');
$("#code").after($ctrlSpaceMessage.css({
"margin": "5px 0 0 0",
"text-align": "center",
"width": "655px",
"padding": ""
}));
};
openFormWizard = function () {
triggerWindow.getItems()[0].setVisible(false);
triggerWindow.getItems()[1].setVisible(false);
triggerWindow.getItems()[2].setVisible(true);
triggerWindow.getItems()[3].setVisible(false);
triggerWindow.getItems()[4].setVisible(false);
triggerWindow.getItems()[5].setVisible(false);
triggerWindow.footer.getItems()[0].setVisible(true); //button Cancel
triggerWindow.footer.getItems()[1].setVisible(true); //button Save
triggerWindow.footer.getItems()[2].setVisible(false); //Edit Source Code
triggerWindow.footer.getItems()[3].setVisible(false); //button Aply
triggerWindow.footer.getItems()[4].setVisible(false); //button Copy/import
triggerWindow.showFooter();
$(triggerWindow.body).addClass("pmui-background");
formEditTriggerWizard.setFocus();
};
openFormWizardEditMode = function () {
triggerWindow.getItems()[0].setVisible(false);
triggerWindow.getItems()[1].setVisible(false);
triggerWindow.getItems()[2].setVisible(true);
triggerWindow.getItems()[3].setVisible(false);
triggerWindow.getItems()[4].setVisible(false);
triggerWindow.getItems()[5].setVisible(false);
triggerWindow.footer.getItems()[0].setVisible(true); //button Cancel
triggerWindow.footer.getItems()[1].setVisible(true); //button Save
triggerWindow.footer.getItems()[2].setVisible(true); //Edit Source Code
triggerWindow.footer.getItems()[3].setVisible(false); //button Aply
triggerWindow.footer.getItems()[4].setVisible(false); //button Copy/import
triggerWindow.showFooter();
$(triggerWindow.body).addClass("pmui-background");
formEditTriggerWizard.setFocus();
};
openFormCopy = function () {
triggerWindow.getItems()[0].setVisible(false);
triggerWindow.getItems()[1].setVisible(false);
triggerWindow.getItems()[2].setVisible(false);
triggerWindow.getItems()[3].setVisible(true);
triggerWindow.getItems()[4].setVisible(false);
triggerWindow.getItems()[5].setVisible(false);
triggerWindow.setTitle("Copy Trigger".translate());
triggerWindow.footer.getItems()[0].setVisible(true); //button Cancel
triggerWindow.footer.getItems()[1].setVisible(false); //button Save
triggerWindow.footer.getItems()[2].setVisible(false); //Edit Source Code
triggerWindow.footer.getItems()[3].setVisible(false); //button Aply
triggerWindow.footer.getItems()[4].setVisible(true); //button Copy/import
triggerWindow.showFooter();
$(triggerWindow.body).addClass("pmui-background");
formCopyTrigger.setFocus();
$(".pmui-field").css("float", "left");
$('#Code .pmui.pmui-pmcodemirrorcontrol').append($ctrlSpaceMessage.css({
"margin-top": "10px",
"text-align": "",
"width": "655px",
"padding": ""
}));
};
openFormEditCode = function () {
triggerWindow.getItems()[0].setVisible(false);
triggerWindow.getItems()[1].setVisible(false);
triggerWindow.getItems()[2].setVisible(false);
triggerWindow.getItems()[3].setVisible(false);
triggerWindow.getItems()[4].setVisible(true);
triggerWindow.getItems()[5].setVisible(false);
triggerWindow.setTitle("Editor".translate());
triggerWindow.footer.getItems()[0].setVisible(true); //button Cancel
triggerWindow.footer.getItems()[1].setVisible(false); //button Save
triggerWindow.footer.getItems()[2].setVisible(false); //Edit Source Code
triggerWindow.footer.getItems()[3].setVisible(true); //button Aply
triggerWindow.footer.getItems()[4].setVisible(false); //button Copy/import
triggerWindow.showFooter();
$(triggerWindow.body).addClass("pmui-background");
$($('#codeEditor .CodeMirror.cm-s-default.CodeMirror-wrap')[0]).after($ctrlSpaceMessage.css({
"padding": "5px 0 0 10px",
"text-align": ""
}));
};
openNewTriggerOptions = function () {
triggerWindow.getItems()[0].setVisible(false);
triggerWindow.getItems()[1].setVisible(false);
triggerWindow.getItems()[2].setVisible(false);
triggerWindow.getItems()[3].setVisible(false);
triggerWindow.getItems()[4].setVisible(false);
triggerWindow.getItems()[5].setVisible(true);
triggerWindow.setTitle("Create Predefined Trigger".translate());
triggerWindow.footer.getItems()[0].setVisible(true); //button Cancel
triggerWindow.footer.getItems()[1].setVisible(false); //button Save
triggerWindow.footer.getItems()[2].setVisible(false); //Edit Source Code
triggerWindow.footer.getItems()[3].setVisible(false); //button Aply
triggerWindow.footer.getItems()[4].setVisible(false); //button Copy/import
triggerWindow.showFooter();
$(triggerWindow.body).removeClass("pmui-background");
};
//obtaning the list of process to show it on the copy/import of a trigger dropdown
listProjects = [];
getListProjects = function () {
restClient = new PMRestClient({
typeRequest: 'get',
functionSuccess: function (xhr, response) {
listProjects = [];
formCopyTrigger.getFields()[0].clearOptions();
listProjects[0] = {
label: "- Select a process -".translate(),
value: "",
disabled: true,
selected: true
};
for (i = 0; i < response.length; i++) {
listProjects.push({
label: response[i].prj_name,
value: response[i].prj_uid
});
}
formCopyTrigger.getFields()[0].setOptions(listProjects);
},
functionFailure: function (xhr, response) {
PMDesigner.msgWinError(response.error.message);
},
messageError: "There are problems getting the list of projects.".translate()
});
restClient.setBaseEndPoint('projects');
restClient.executeRestClient();
};
//form Copy/Import Trigger
triggerSelectedData;
formCopyTrigger = new PMUI.form.Form({
id: "formCopyTriggers",
border: true,
width: '890px',
height: 'auto',
title: "",
visibleHeader: false,
items: [
{
pmType: 'dropdown',
id: "processField",
label: 'Process'.translate(),
name: 'prj_uid',
required: true,
controlsWidth: 300,
value: "",
options: listProjects,
onChange: function (newValue, prevValue) {
var formFields = formCopyTrigger.getFields();
formFields[2].setValue("");
formFields[3].setValue("");
formFields[4].controls[0].cm.setValue("");
var uidProj = newValue, myForm = this.form;
//obtaning the Trigger list of the process SELECTED
restClient = new PMRestClient({
typeRequest: 'get',
functionSuccess: function (xhr, response) {
triggerSelectedData = response;
var listTriggersCopy = [];
listTriggersCopy[0] = {
label: "- Select a trigger -".translate(),
value: "",
disabled: true,
selected: true
};
for (i = 0; i < response.length; i++) {
listTriggersCopy.push({
label: response[i].tri_title,