processmaker-builder
Version:
The gulp task runner for ProcessMaker building
126 lines (117 loc) • 4.09 kB
text/xml
xml version="1.0" encoding="UTF-8"
<dynaForm type="xmlform" name="dynaformAssignVariables" width="450" enableTemplate="1">
<PRO_UID type="hidden"/>
<DYN_UID type="hidden"/>
<DYN_TITLE type="hidden"/>
<DYN_TYPE type="hidden"/>
<ACTION type="hidden"/>
<VALIDATION_MESSAGE type="hidden"/>
<DYN_DESCRIPTION type="hidden"/>
<ADD_TABLE type="hidden"/>
<FIELDS type="grid" xmlgrid="dynaforms/dynaforms_AssignVariablesGrid" addrow="0" deleterow="0" mode="edit"/>
<SAVE_FROM_PMTABLE type="button" onclick="validatePKFields (this.form,'save');">
<en><![CDATA[Save]]></en>
</SAVE_FROM_PMTABLE>
<SAVE_AND_OPEN_FROM_PMTABLE type="button" onclick="validatePKFields (this.form,'saveAndOpen');">
<en><![CDATA[Save & Open]]></en>
</SAVE_AND_OPEN_FROM_PMTABLE>
<!-- BTN_CANCEL type="button" onclick="cancel();">
<en>Cancel</en>
</BTN_CANCEL //-->
<JSCRIPT type="javascript"><![CDATA[
// function that validates the primary keys in a grid for the Elements
function validatePKFields (formElement, value){
var fieldsArray = formElement.FIELDS;
var fieldId = '';
var counter = 1;
var invalidFields = new Array();
fieldId = 'form[FIELDS]['+counter+'][PRO_VARIABLE]';
while (document.getElementById(fieldId)!=null){
fieldNameId = 'form[FIELDS]['+counter+'][FLD_NAME]';
if (document.getElementById(fieldId).value=='') {
invalidFields.push(document.getElementById(fieldNameId).value);
}
counter++;
fieldId = 'form[FIELDS]['+counter+'][PRO_VARIABLE]';
}
//alert (invalidFields.length);
if (invalidFields.length>0){
//alert(invalidFields[0]);
msgBox("@#VALIDATION_MESSAGE","alert");
} else {
if (value=='save'){
dynaformSavePMBasedForm( formElement, false );
} else {
dynaformSave( formElement, true );
}
}
}
function assignVariable(){
var variables;
var i=1;
while( document.getElementById('form[FIELDS]['+i+'][PRO_VARIABLE]')!=undefined){
if (variables!=''&&variables!=undefined){
variables = variables + '|' + document.getElementById('form[FIELDS]['+i+'][PRO_VARIABLE]').value;
} else {
variables = document.getElementById('form[FIELDS]['+i+'][PRO_VARIABLE]').value;
}
i++;
}
document.getElementById('form[PROCESS_VARIABLES]').value = variables;
currentPopupWindow.remove();
}
var _oVarsPanel_;
var showDynaformsFormVars = function(sFieldName, sAjaxServer, sProcess, sSymbol) {
_oVarsPanel_ = new leimnud.module.panel();
_oVarsPanel_.options = {
limit : true,
size : {w:600,h:420},
position : {x:0,y:0,center:true},
title : '',
theme : 'processmaker',
statusBar: false,
control : {drag:false,resize:true,close:true},
fx : {opacity:true,rolled:false,modal:true}
};
_oVarsPanel_.make();
_oVarsPanel_.events = {
remove:function() {
delete _oVarsPanel_;
}.extend(this)
};
_oVarsPanel_.loader.show();
oRPC = new leimnud.module.rpc.xmlhttp({
url : sAjaxServer,
method: 'POST',
args : 'sFieldName=' + sFieldName + '&sProcess=' + sProcess + '&sSymbol=' + sSymbol + '&sType=2'
});
oRPC.callback = function(oRPC) {
_oVarsPanel_.loader.hide();
var scs = oRPC.xmlhttp.responseText.extractScript();
_oVarsPanel_.addContent(oRPC.xmlhttp.responseText);
scs.evalScript();
}.extend(this);
oRPC.make();
};
var insertFormVar = function(sFieldName, sValue) {
oAux = document.getElementById(sFieldName);
if (oAux.setSelectionRange) {
var rangeStart = oAux.selectionStart;
var rangeEnd = oAux.selectionEnd;
var tempStr1 = oAux.value.substring(0,rangeStart);
var tempStr2 = oAux.value.substring(rangeEnd);
oAux.value = tempStr1 + sValue + tempStr2;
}
else {
if (document.selection) {
oAux.focus();
document.selection.createRange().text = sValue;
}
}
_oVarsPanel_.remove();
};
function cancel(){
oPanel.remove();
}
]]></JSCRIPT>
</dynaForm>