Files
luos/workflow/engine/xmlform/users/users_New.xml
2011-01-27 15:24:56 +00:00

300 lines
11 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<dynaForm name="myInfo" width="70%" labelWidth="300px" 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"/>
<TITLE3 type="title" group="1">
<en>Profile</en>
</TITLE3>
<USR_PHOTO type="file" group="1">
<en>Photo</en>
</USR_PHOTO>
<USR_RESUME type="file" group="1">
<en>Resume</en>
</USR_RESUME>
<TITLE1 type="title" group="1">
<en>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>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>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>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>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>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>Zip 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>Country<option name=""/></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>State or Region</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>Location</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>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>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>Reports to<option name=""/></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>Replaced by<option name=""/></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>Expiration Date</en>
</USR_DUE_DATE>
<USR_CALENDAR type="dropdown" sqlconnection="dbarray">
SELECT CALENDAR_UID, CALENDAR_NAME FROM availableCalendars
<en>Calendar
<option name="">- None -</option>
</en>
</USR_CALENDAR>
<USR_STATUS type="dropdown" group="1" required="0">
<en>Status
<option name="ACTIVE">ACTIVE</option>
<option name="INACTIVE">INACTIVE</option>
<option name="VACATION">ON VACATION</option>
</en>
</USR_STATUS>
<USR_ROLE type="dropdown" defaultvalue="" 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 FIELD(ROL_CODE,'@#DEFAULT_ROLE') DESC
<en>Role</en>
</USR_ROLE>
<TITLE2 type="title" group="1">
<en>Change Password</en>
</TITLE2>
<USR_NEW_PASS type="password" size="30" maxlength="20" validate="5" mask="" required="1">
<en>New Password </en>
</USR_NEW_PASS>
<USR_CNF_PASS type="password" size="30" maxlength="20" validate="5" mask="" required="1">
<en>Confirm Password </en>
</USR_CNF_PASS>
<SUBMIT type="button" onclick="validateLocalFields(this.form);" group="1">
<en>Save</en>
</SUBMIT>
<BTN_CANCEL type="button" onclick="cancel();">
<en>Cancel</en>
</BTN_CANCEL>
<MESSAGE0 type="phpvariable"/>
<MESSAGE1 type="phpvariable"/>
<MESSAGE2 type="phpvariable"/>
<MESSAGE3 type="phpvariable"/>
<MESSAGE4 type="phpvariable"/>
<MESSAGE5 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]'], 'change', {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,4})+$/;
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;
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());
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 (!bContinue){
msgBox(sAlert, "alert");
} else {
oForm.submit();
}
}
};
function cancel() {
window.location = 'users_List';
}
]]></JS>
</dynaForm>