UNPKG

processmaker-builder

Version:

The gulp task runner for ProcessMaker building

329 lines (309 loc) 13.5 kB
<?xml version="1.0" encoding="UTF-8"?> <dynaForm name="myInfo" width="80%" labelWidth="350px" mode="edit" enableTemplate="1"> <menuUser type="xmlmenu" xmlfile="users/users_NewOptions"> <en/> </menuUser> <START_DATE type="phpVariable"/> <DEFAULT_ROLE type="phpVariable"/> <END_DATE type="phpVariable"/> <TITLE1 type="title" group="1"> <en><![CDATA[Personal Information]]></en> </TITLE1> <USR_UID type="private"/> <USR_FIRSTNAME type="text" size="30" maxlength="32" defaultvalue="" required="1" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[First Name]]></en> </USR_FIRSTNAME> <USR_LASTNAME type="text" size="30" maxlength="32" defaultvalue="" required="1" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[Last Name]]></en> </USR_LASTNAME> <USR_USERNAME type="text" size="15" maxlength="50" validate="Login" defaultvalue="" required="1" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" onchange=""> <en><![CDATA[User ID (*)]]></en> </USR_USERNAME> <USR_EMAIL type="text" size="35" maxlength="100" validate="Email" defaultvalue="" required="0" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[Email]]></en> </USR_EMAIL> <USR_ADDRESS type="textarea" rows="3" cols="50" defaultvalue="" required="0" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[Address]]></en> </USR_ADDRESS> <USR_ZIP_CODE type="text" size="30" maxlength="30" defaultvalue="" required="0" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[Zip/Postal Code]]></en> </USR_ZIP_CODE> <USR_COUNTRY type="dropdown" style="width:174pt" defaultvalue="" required="0" group="1" dependentfields="USR_CITY" readonly="0" sqlconnection="" noshowingrid="0" readonlyingrid="0"> SELECT IC_UID, IC_NAME FROM ISO_COUNTRY ORDER BY IC_NAME <en><![CDATA[Country]]><option name=""><![CDATA[]]></option></en> </USR_COUNTRY> <USR_CITY type="dropdown" style="width:174pt" defaultvalue="" required="0" group="1" dependentfields="USR_LOCATION" readonly="0" sqlconnection="" noshowingrid="0" readonlyingrid="0"> SELECT IS_UID, IS_NAME FROM ISO_SUBDIVISION WHERE IC_UID = "@#USR_COUNTRY" ORDER BY IS_NAME <en><![CDATA[State or Region]]><option name=""><![CDATA[N/D]]></option></en> </USR_CITY> <USR_LOCATION type="dropdown" style="width:174pt" defaultvalue="" required="0" group="1" readonly="0" sqlconnection="" noshowingrid="0" readonlyingrid="0"> SELECT IL_UID, IL_NAME FROM ISO_LOCATION WHERE IC_UID = "@#USR_COUNTRY" AND IS_UID = "@#USR_CITY" AND IS_UID NOT IN ("") ORDER BY IL_NAME <en><![CDATA[Location]]><option name=""><![CDATA[N/D]]></option></en> </USR_LOCATION> <USR_PHONE type="text" size="15" maxlength="16" defaultvalue="" required="0" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[Phone]]></en> </USR_PHONE> <USR_POSITION type="text" size="35" maxlength="35" defaultvalue="" required="0" group="1" dependentfields="" linkfield="" strto="" readonly="0" noshowingrid="0" readonlyingrid="0" totalizeable="0" sqlconnection=""> <en><![CDATA[Position]]></en> </USR_POSITION> <USR_REPORTS_TO type="dropdown" defaultvalue="" required="0" group="1" dependentfields="" readonly="0" sqlconnection="dbarray" noshowingrid="0" readonlyingrid="0"> SELECT * FROM aUserInfo <en><![CDATA[Reports to]]><option name=""><![CDATA[]]></option></en> </USR_REPORTS_TO> <USR_REPLACED_BY type="dropdown" defaultvalue="" required="0" group="1" dependentfields="" readonly="0" sqlconnection="dbarray" noshowingrid="0" readonlyingrid="0"> SELECT * FROM aUserInfo <en><![CDATA[Replaced by]]><option name=""><![CDATA[]]></option></en> </USR_REPLACED_BY> <USR_DUE_DATE type="date" mask="Y-m-d" startDate="@#START_DATE" endDate="@#END_DATE" defaultvalue="" required="1" group="1" readonly="0" noshowingrid="0" readonlyingrid="0"> <en><![CDATA[Expiration Date]]></en> </USR_DUE_DATE> <USR_CALENDAR type="dropdown" sqlconnection="dbarray"> SELECT CALENDAR_UID, CALENDAR_NAME FROM availableCalendars <en><![CDATA[Calendar]]><option name=""><![CDATA[- None -]]></option></en> </USR_CALENDAR> <USR_STATUS type="dropdown" group="1" required="0"> <en><![CDATA[Status]]><option name="ACTIVE"><![CDATA[ACTIVE]]></option><option name="INACTIVE"><![CDATA[INACTIVE]]></option><option name="VACATION"><![CDATA[ON VACATION]]></option></en> </USR_STATUS> <USR_ROLE type="dropdown" defaultvalue="PROCESSMAKER_OPERATOR" required="0" group="1" dependentfields="" readonly="0" sqlconnection="rbac" noshowingrid="0" readonlyingrid="0"> SELECT ROL_CODE AS USR_ROLE, ROL_CODE AS CODE FROM ROLES WHERE ROL_SYSTEM = '00000000000000000000000000000002' AND ROL_STATUS = 1 ORDER BY ROL_CODE <en><![CDATA[Role]]></en> </USR_ROLE> <TITLE2 type="title" group="1"> <en><![CDATA[Change Password]]></en> </TITLE2> <USR_NEW_PASS type="password" size="30" maxlength="20" validate="5" mask="" required="1"> <en><![CDATA[New Password]]></en> </USR_NEW_PASS> <USR_CNF_PASS type="password" size="30" maxlength="20" validate="5" mask="" required="1"> <en><![CDATA[Confirm Password]]></en> </USR_CNF_PASS> <SUBMIT type="button" onclick="validateLocalFields(this.form);" group="1"> <en><![CDATA[Save]]></en> </SUBMIT> <TITLE3 type="title" group="1"> <en><![CDATA[Profile]]></en> </TITLE3> <USR_PHOTO type="file" group="1"> <en><![CDATA[Photo]]></en> </USR_PHOTO> <!-- <USR_RESUME type="file" group="1"> <en>Résumé</en> </USR_RESUME> --> <MAX_FILES_SIZE type="edit" mode="view"> <en><![CDATA[Maximum upload file size]]></en> </MAX_FILES_SIZE> <BTN_CANCEL type="button" onclick="cancel();"> <en><![CDATA[Cancel]]></en> </BTN_CANCEL> <MESSAGE0 type="phpvariable"/> <MESSAGE1 type="phpvariable"/> <MESSAGE2 type="phpvariable"/> <MESSAGE3 type="phpvariable"/> <MESSAGE4 type="phpvariable"/> <MESSAGE5 type="phpvariable"/> <MESSAGE6 type="phpvariable"/> <JS type="javascript" replacetags="1"><![CDATA[ var sUsername; var dynaformOnload = function() { sUsername = document.forms[0].elements['form[USR_USERNAME]'].value; leimnud.event.add(document.forms[0].elements['form[USR_USERNAME]'], 'blur', {method:verifyUsername, instance:document.forms[0].elements['form[USR_USERNAME]'], event:true}); leimnud.event.add(document.forms[0].elements['form[USR_CITY]'], 'change', {method:existsElements, instance:document.forms[0].elements['form[USR_CITY]'], event:true}); leimnud.event.add(document.forms[0].elements['form[USR_LOCATION]'], 'change', {method:existsElements, instance:document.forms[0].elements['form[USR_LOCATION]'], event:true}); if (document.forms[0].elements['form[USR_CITY]'].options.length == 0) { hideRow(document.forms[0].elements['form[USR_CITY]']); } if (document.forms[0].elements['form[USR_LOCATION]'].options.length == 0) { hideRow(document.forms[0].elements['form[USR_LOCATION]']); } }; var verifyUsername = function() { document.forms[0].elements['form[USR_USERNAME]'].disabled = true; document.forms[0].elements['form[SUBMIT]'].disabled = true; var oRPC = new leimnud.module.rpc.xmlhttp({ url :'users_Ajax', async : false, method :'POST', args :'function=verifyUsername&sOriginalUsername=' + sUsername + '&sUsername=' + encodeURIComponent(this.value)}); oRPC.make(); var sResponse = oRPC.xmlhttp.responseText; document.forms[0].elements['form[USR_USERNAME]'].disabled = false; if (sResponse == 1) { new leimnud.module.app.alert().make({ label: "@#MESSAGE0" }); document.forms[0].elements['form[USR_USERNAME]'].focus(); } else { document.forms[0].elements['form[SUBMIT]'].disabled = false; } }; var verifyUserInformation = function(oForm) { var oAux1, oAux2; var bContinue = true; oAux1 = oForm.elements['form[USR_FIRSTNAME]']; if (oAux1.value == '') { new leimnud.module.app.alert().make({ label: "@#MESSAGE4" }); oAux1.focus(); bContinue = false; return false; } oAux1 = oForm.elements['form[USR_LASTNAME]']; if (oAux1.value == '') { new leimnud.module.app.alert().make({ label: "@#MESSAGE5" }); oAux1.focus(); bContinue = false; return false; } oAux1 = oForm.elements['form[USR_USERNAME]']; if (oAux1.value == '') { new leimnud.module.app.alert().make({ label: "@#MESSAGE1" }); oAux1.focus(); bContinue = false; return false; } oAux1 = oForm.elements['form[USR_DUE_DATE]']; if (oAux1.value == '') { new leimnud.module.app.alert().make({ label: "@#MESSAGE2" }); oAux1.focus(); bContinue = false; return false; } oAux1 = oForm.elements['form[USR_NEW_PASS]']; if (oAux1.value != '') { oAux2 = oForm.elements['form[USR_CNF_PASS]']; if (oAux1.value != oAux2.value) { new leimnud.module.app.alert().make({ label: "@#MESSAGE3" }); oAux1.focus(); bContinue = false; return false; } } if (bContinue) { oForm.submit(); } }; var existsElements = function () { if (this.options.length > 0) { showRow(this); } else { hideRow(this); } }; /* * function validateLocalEmail * @author gustavo cruz gustavo-at-colosa-dot-com * @param sEmail email form field. * @return true / false * @desc function using regular expressions ir order to validate * an email adress. */ var validateLocalEmail = function(sEmail){ var sFilter = /^[a-zA-Z]+([_\.-]?[a-zA-Z0-9]+)*@[a-zA-Z0-9]+([\.-]?[a-zA-Z0-9]+)*(\.[a-zA-Z]{2,6})+$/; if (!sFilter.test(sEmail.value)) { return false; } else { return true; } } /* * function validatePasswordFields * @author gustavo cruz gustavo-at-colosa-dot-com * @param sPassword email form field. * @param sPasswordCnf email form field. * @return true/false * @desc function that compares the values of two password fields */ var validatePasswordsFields = function(sPassword,sPasswordCnf){ if (sPassword.value==sPasswordCnf.value){ return true; } else { return false; } } /* * function validateLocalData * @author gustavo cruz gustavo-at-colosa-dot-com * @param oForm form that is validated. * @return void. * @desc function that validates local data for email and passwords. */ var validateLocalFields = function(oForm) { var sEmail = document.getElementById('form[USR_EMAIL]'); var sPassword = document.getElementById('form[USR_NEW_PASS]'); var sPasswordRep = document.getElementById('form[USR_CNF_PASS]'); var sAlert = ""; var bContinue = true;    var permitted = false; bContinue = validateForm("[{\"name\":\"USR_FIRSTNAME\",\"type\":\"text\",\"label\":\"First Name\"},{\"name\":\"USR_LASTNAME\",\"type\":\"text\",\"label\":\"Last Name\"},{\"name\":\"USR_USERNAME\",\"type\":\"text\",\"label\":\"User ID (*)\"},{\"name\":\"USR_DUE_DATE\",\"type\":\"date\",\"label\":\"Expiration Date\"},{\"name\":\"USR_NEW_PASS\",\"type\":\"password\",\"label\":\"New Password\"},{\"name\":\"USR_CNF_PASS\",\"type\":\"password\",\"label\":\"Confirm Password\"}]".parseJSON()); aExtensions = new Array ( ".ais", ".bmp", ".bw", ".cdr", ".cdt", ".cgm", ".cmx", ".cpt", ".dcx", ".dib", ".emf", ".gbr", ".gif", ".gih", ".ico", ".iff", ".ilbm", ".jfif", ".jif", ".jpe", ".jpeg", ".jpg", ".kdc", ".lbm", ".mac", ".pat", ".pcd", ".pct", ".pcx", ".pic", ".pict", ".png", ".pntg", ".pix", ".psd", ".psp", ".qti", ".qtif", ".rgb", ".rgba", ".rif", ".rle", ".sgi", ".tga", ".tif", ".tiff", ".wmf", ".xcf" ); oUsrPhoto = oForm.elements['form[USR_PHOTO]']; sUsrPhoto = oUsrPhoto.value; if (sUsrPhoto != "" ) { extension = (sUsrPhoto.substring(sUsrPhoto.lastIndexOf("."))).toLowerCase();        for (var i = 0; i < aExtensions.length; i++) {          if (aExtensions[i] == extension) {            permitted = true;            break;          }        } } else { permitted = true; } if (bContinue){ if (!validateLocalEmail(sEmail)){ sAlert = sAlert+"Please provide a valid email address. <br>"; bContinue = false; } if (!validatePasswordsFields(sPassword,sPasswordRep)){ sAlert = sAlert+"The password fields don't match. <br>"; bContinue = false; } if (!permitted) { sAlert = sAlert + "@#MESSAGE6" + " <br>"; bContinue = false; } if (!bContinue){ msgBox(sAlert, "alert"); } else { oForm.submit(); } } }; function cancel() { window.location = 'users_List'; } ]]></JS> </dynaForm>