//error codes
//error codes
var errTC = 0;

var errPAUSERID		= 1;
var errPAEMAIL		= 2;
var errPAFIRSTNAME	= 3;
var errPALASTNAME	= 4;
var errPAADDRESS	= 5;
var errPATEL		= 6;
var errPAFAX		= 7;

var errCAUSERID1	= 8;
var errCAEMAIL1		= 9;
var errCAFIRSTNAME1	= 10;
var errCALASTNAME1	= 11;
var errCATEL1		= 12;

var errCAUSERID2	= 13;
var errCAEMAIL2		= 14;
var errCAFIRSTNAME2	= 15;
var errCALASTNAME2	= 16;
var errCATEL2		= 17;

var errCAADDRESS	= 18;
var errCATEL		= 19;
var errCAFAX		= 20;
var errCACONAME		= 21;
var errCACOREGID	= 22;

var errSAMEUSERID	= 23;
var errNOUSER2		= 24;
var errOLDPASSWORD	= 25;
var errNEWPASSWORD	= 26;

var errSUBDATE		= 27;
var errLOGINUSERID	= 28;
var errLOGINPASSWORD= 29;
var errNETRUST		= 30;

var errONOUSERIDACCTID	= 41;
var errOBOTHUSERIDACCTID	= 42;


var errBLKHSENR		= 51;
var errSTRCD		= 52;
var errLEVELNR		= 53;
var errBLDGNM		= 54;
var errPOBUNIT		= 55;
var errPOSTCD		= 56;


var errBANKCODE		= 61;
var errBRANCHCODE	= 62;
var errBANKACCTNAME	= 63;
var errBANKACCTID	= 64;
var errEFFECTIVEDATE	= 65;


var errBOTHAPPNOPNO = 71;
var errAPPNO		= 72;
var errPNO			= 73;
var errCHKDGT		= 74;
var errBLANKAPPNOPNO = 75;
var errCHANGEAGENTNAME = 76;

//Added by Welly 01 Mar 2008 for XSS checking
var errPAWrongEMAIL		= 77;
var errPAWrongADDRESS		= 78;

var errCAWrongEMAIL1		= 79;
var errCAWrongEMAIL2		= 80;
var errCAWrongCoName		= 81;
var errCAWrongCoRegID		= 82;
//Ended---------------------------------------

//all input error messages
var errMsg= new Array();
errMsg[errTC] = "Please read the Terms & Conditions and signify acceptance by checking the box.";

errMsg[errPAUSERID] = "Please enter a valid User ID (Alphanumeric, 4 to 15 characters).";
errMsg[errPAEMAIL] = "Please enter a valid email address (Alphanumeric, up to 50 characters).";
errMsg[errPAFIRSTNAME] = "Please enter your first name (up to 20 characters).";
errMsg[errPALASTNAME] = "Please enter your last name (up to 20 characters).";
errMsg[errPAADDRESS] = "Please enter your address (up to 255 characters).";
errMsg[errPATEL] = "Please enter your telephone (Numeric, up to 10 characters).";
errMsg[errPAFAX] = "Please enter your fax (Numeric, up to 10 characters).";
errMsg[errPAWrongEMAIL] = "Wrong key inserted, please check on Email.";
errMsg[errPAWrongADDRESS] = "Wrong key inserted, please check on Address.";

errMsg[errCAUSERID1] = "Please enter a valid User ID for User 1 (Alphanumeric, 4 to 15 characters).";
errMsg[errCAEMAIL1] = "Please enter a valid email address for User 1 (Alphanumeric, up to 50 characters).";
errMsg[errCAFIRSTNAME1] = "Please enter a valid first name for User 1 (up to 20 characters).";
errMsg[errCALASTNAME1] = "Please enter a valid last name for User 1 (up to 20 characters).";
errMsg[errCATEL1] = "Please enter a valid telephone for User 1 (Numeric, up to 10 characters).";

errMsg[errCAUSERID2] = "Please enter a valid User ID for User 2 (Alphanumeric, 4 to 15 characters).";
errMsg[errCAEMAIL2] = "Please enter a valid email address for User 2 (Alphanumeric, up to 50 characters).";
errMsg[errCAFIRSTNAME2] = "Please enter a valid first name for User 2 (up to 20 characters).";
errMsg[errCALASTNAME2] = "Please enter a valid last name for User 2 (up to 20 characters).";
errMsg[errCATEL2] = "Please enter a valid telephone for User 2 (Numeric, up to 10 characters).";

errMsg[errCAADDRESS] = "Please enter a valid address for your Corp/Firm (up to 255 characters).";
errMsg[errCATEL] = "Please enter a valid telephone for your Corp/Firm (Numeric, up to 10 characters).";
errMsg[errCAFAX] = "Please enter a valid fax for your Corp/Firm (Numeric, up to 10 characters).";
errMsg[errCACONAME] = "Please enter a valid name for your Corp/Firm (up to 50 characters).";
errMsg[errCACOREGID] = "Please enter a valid registration ID for your Corp/Firm (up to 50 characters).";

errMsg[errCAWrongEMAIL1] = "Wrong key inserted, please check on Email User 1.";
errMsg[errCAWrongEMAIL2] = "Wrong key inserted, please check on Email User 2.";
errMsg[errCAWrongCoName] = "Wrong key inserted, please check on Company Name.";
errMsg[errCAWrongCoRegID] = "Wrong key inserted, please check on Company Reg ID/Law Firm Code.";

errMsg[errSAMEUSERID] = "Please enter different User ID for User 1 and User 2.";
errMsg[errNOUSER2] = "User ID field for User 2 is empty.  If you do not wish to register/add a second user, please do not fill in the particulars for User 2.";

errMsg[errOLDPASSWORD] = "Please enter your old password.";
errMsg[errNEWPASSWORD] = "Please enter the same new password twice (Aplhanumeric, between 8 to 15 characters).";

errMsg[errSUBDATE] = "Please enter a valid subscription date.";

errMsg[errLOGINUSERID] = "Please enter your User ID.";
errMsg[errLOGINPASSWORD] = "Please enter your password.";
errMsg[errNETRUST] = "Please enter your Netrust Distinguished Name.";

errMsg[errONOUSERIDACCTID] = "Please enter a valid User ID or Account ID."
errMsg[errOBOTHUSERIDACCTID] = "Please enter a valid User ID or Account ID but NOT both."


errMsg[errBLKHSENR] = "Please enter a valid Block / House No (Alphanumeric, up to 10 characters)."
errMsg[errSTRCD] = "Please enter a valid Street Code (Alphanumeric, up to 6 characters)."
errMsg[errLEVELNR] = "Please enter a valid Level No (Alphanumeric, up to 3 characters)."
errMsg[errPOBUNIT] = "Please enter a valid PO Box / Unit No (Alphanumeric, up to 6 characters)."
errMsg[errBLDGNM] = "Please enter a valid Building Name (Alphanumeric, up to 45 characters)."
errMsg[errPOSTCD] = "Please enter a valid Postal Code (Numeric, up to 6 characters)."

errMsg[errBANKCODE] = "Please enter a valid Bank Code (Alphanumeric, up to 4 characters)."
errMsg[errBRANCHCODE] = "Please enter a valid Branch Code (Alphanumeric, up to 5 characters)."
errMsg[errBANKACCTNAME] = "Please enter a valid Bank Account Name (up to 50 characters)."
errMsg[errBANKACCTID] = "Please enter a valid Bank Account ID (Numeric, up to 10 characters)."

errMsg[errEFFECTIVEDATE] = "Please enter a valid effective date."


errMsg[errBOTHAPPNOPNO] = "Please enter either an App No or P No but not both.";
errMsg[errBLANKAPPNOPNO] = "Please enter both App No and P No.";

errMsg[errAPPNO] = "Please enter a valid App No (Numeric, YYYYDDDDD-C or YYYYDDDDD or YYDDDDD-C or YYDDDDD).";
errMsg[errPNO] = "Please enter a valid P No (Numeric, DDDDD or DDDDDD).";
errMsg[errCHKDGT] = "Please enter a valid Check Digit (Numeric, C).";

errMsg[errCHANGEAGENTNAME] = "Please enter a valid Agent's Name (up to 90 characters).";

//validation for OIS Admin request form
function validateOAReqForm1()
{
	form = document.Form;
	if (isBlank(form.TxtUserID.value)  && isBlank(form.TxtAccountID.value))
		alert (errMsg[errONOUSERIDACCTID]);
	else if (!isBlank(form.TxtUserID.value) && !isBlank(form.TxtAccountID.value))
		alert (errMsg[errOBOTHUSERIDACCTID]);
	else
		return true;
	return false;
}

//validation for Change of Agent Name form
function validateChangeAgentName()
{
	form = document.Form;
	FieldValue1 = form.NewAgtName.value;
	FieldValue1 = FieldValue1.replace(/ /g,"");
	FieldValue1 = FieldValue1.toLowerCase();

	if (isBlank(form.NewAgtName.value))
		alert (errMsg[errCHANGEAGENTNAME]);
	else
		return true;
	return false;
}
//validation for OIS Admin request form
function validateOAReqForm2()
{
	form = document.Form;
	if (isBlank(form.TxtUserID.value))
		alert (errMsg[errLOGINID]);
	else
		return true;
	return false;
}



//validation for PA form
function validatePAForm()
{
	form = document.Form;
	FieldValue1 = form.TxtEmail.value;
	FieldValue1 = FieldValue1.replace(/ /g,"");
	FieldValue1 = FieldValue1.toLowerCase();
	FieldValue2 = form.TxtAddress.value;
	FieldValue2 = FieldValue2.replace(/ /g,"");
	FieldValue2 = FieldValue2.toLowerCase();

	if (!form.CB.checked)
		alert(errMsg[errTC]);
	else if (isBlank(form.TxtUserID.value) || !isAlphaNumeric(form.TxtUserID.value) || !isBetweenLen(form.TxtUserID.value, 4, 15))
		alert(errMsg[errPAUSERID]);
	else if (isBlank(form.TxtEmail.value) || !isMaxLen(form.TxtEmail.value, 50))
		alert(errMsg[errPAEMAIL]);
	else if (isBlank(form.TxtFirstNm.value) || !isMaxLen(form.TxtFirstNm.value, 20))
		alert(errMsg[errPAFIRSTNAME]);
	else if (isBlank(form.TxtLastNm.value) || !isMaxLen(form.TxtLastNm.value, 20))
		alert(errMsg[errPALASTNAME]);

	else if (isBlank(form.TxtAddress.value) || !isMaxLen(form.TxtAddress.value, 255))
		alert(errMsg[errPAADDRESS]);	
	else if (isBlank(form.TxtTel.value) || !isNumeric(form.TxtTel.value) || !isMaxLen(form.TxtTel.value, 10))
		alert(errMsg[errPATEL]);
	else if (!isBlank(form.TxtFax.value) && (!isNumeric(form.TxtFax.value) || !isMaxLen(form.TxtFax.value, 10)))
		alert(errMsg[errPAFAX]);

	//Added by Welly 01 Mar 2008 for XSS checking
	else if (FieldValue1.indexOf(String.fromCharCode(60) + "script") != -1)
		alert(errMsg[errPAWrongEMAIL]);
	else if (FieldValue1.indexOf(String.fromCharCode(60) + "javascript") != -1)
		alert(errMsg[errPAWrongEMAIL]);
	else if (FieldValue1.indexOf("&#60;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errPAWrongEMAIL]);
	else if (FieldValue1.indexOf("&#60;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errPAWrongEMAIL]);

	else if (FieldValue2.indexOf(String.fromCharCode(60) + "script") != -1)
		alert(errMsg[errPAWrongADDRESS]);
	else if (FieldValue2.indexOf(String.fromCharCode(60) + "javascript") != -1)
		alert(errMsg[errPAWrongADDRESS]);
	else if (FieldValue2.indexOf("&#60;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errPAWrongADDRESS]);
	else if (FieldValue2.indexOf("&#60;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errPAWrongADDRESS]);
	//Ended---------------------------------

	else
		return true;
	return false;
}

//validate CA Form
function validateCAForm()
{
	form = document.Form;
	FieldValue1 = form.TxtEmail1.value;
	FieldValue2 = form.TxtCoName.value;
	FieldValue3 = form.TxtCoRegID.value;
	FieldValue4 = form.TxtEmail2.value;
	
	FieldValue1 = FieldValue1.replace(/ /g,"");
	FieldValue2 = FieldValue2.replace(/ /g,"");
	FieldValue3 = FieldValue3.replace(/ /g,"");
	FieldValue4 = FieldValue4.replace(/ /g,"");

	FieldValue1 = FieldValue1.toLowerCase();
	FieldValue2 = FieldValue2.toLowerCase();
	FieldValue3 = FieldValue3.toLowerCase();
	FieldValue4 = FieldValue4.toLowerCase();

	if (!form.CB.checked)
		alert (errMsg[errTC]);
	else if (isBlank(form.TxtAddress.value) || !isMaxLen(form.TxtAddress.value, 255))
		alert(errMsg[errCAADDRESS]);	
	else if (isBlank(form.TxtCoTel.value) || !isNumeric(form.TxtCoTel.value) || !isMaxLen(form.TxtCoTel.value, 10))
		alert(errMsg[errCATEL]);
	else if (!isBlank(form.TxtFax.value) && (!isNumeric(form.TxtFax.value) || !isMaxLen(form.TxtFax.value, 10)))
		alert(errMsg[errCAFAX]);
	else if (isBlank(form.TxtCoName.value) || !isMaxLen(form.TxtCoName.value, 50))
		alert(errMsg[errCACONAME]);
	else if (!isBlank(form.TxtCoRegID.value) && !isMaxLen(form.TxtCoRegID.value, 50))
		alert(errMsg[errCACOREGID]);

	//Added by Welly 01 Mar 2008 for XSS checking
	else if (FieldValue1.indexOf(String.fromCharCode(60) + "script") != -1)
		alert(errMsg[errCAWrongEMAIL1]);
	else if (FieldValue1.indexOf(String.fromCharCode(60) + "javascript") != -1)
		alert(errMsg[errCAWrongEMAIL1]);
	else if (FieldValue1.indexOf("&#60;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongEMAIL1]);
	else if (FieldValue1.indexOf("&#60;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongEMAIL1]);

	else if (FieldValue2.indexOf(String.fromCharCode(60) + "script") != -1)
		alert(errMsg[errCAWrongCoName]);
	else if (FieldValue2.indexOf(String.fromCharCode(60) + "javascript") != -1)
		alert(errMsg[errCAWrongCoName]);
	else if (FieldValue2.indexOf("&#60;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongCoName]);
	else if (FieldValue2.indexOf("&#60;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongCoName]);

	else if (FieldValue3.indexOf(String.fromCharCode(60) + "script") != -1)
		alert(errMsg[errCAWrongCoRegID]);
	else if (FieldValue3.indexOf(String.fromCharCode(60) + "javascript") != -1)
		alert(errMsg[errCAWrongCoRegID]);
	else if (FieldValue3.indexOf("&#60;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongCoRegID]);
	else if (FieldValue3.indexOf("&#60;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongCoRegID]);

	else if (FieldValue4.indexOf(String.fromCharCode(60) + "script") != -1)
		alert(errMsg[errCAWrongEMAIL2]);
	else if (FieldValue4.indexOf(String.fromCharCode(60) + "javascript") != -1)
		alert(errMsg[errCAWrongEMAIL2]);
	else if (FieldValue4.indexOf("&#60;&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongEMAIL2]);
	else if (FieldValue4.indexOf("&#60;&#115;&#99;&#114;&#105;&#112;&#116;") != -1)
		alert(errMsg[errCAWrongEMAIL2]);
	//Ended--------------------------------------

	else if (!isBlank(form.TxtUserID1.value) && (form.TxtUserID1.value == form.TxtUserID2.value))
		alert (errMsg[errSAMEUSERID]);
	else if (isBlank(form.TxtUserID1.value) || !isAlphaNumeric(form.TxtUserID1.value) || !isMaxLen(form.TxtUserID1.value, 15)  || !isBetweenLen(form.TxtUserID1.value, 4, 15))
		alert(errMsg[errCAUSERID1]);
	else if (isBlank(form.TxtEmail1.value) || !isMaxLen(form.TxtEmail1.value, 50))
		alert(errMsg[errCAEMAIL1]);		
	else if (isBlank(form.TxtFirstNm1.value) || !isMaxLen(form.TxtFirstNm1.value, 20))
		alert(errMsg[errCAFIRSTNAME1]);
	else if (isBlank(form.TxtLastNm1.value) || !isMaxLen(form.TxtLastNm1.value, 20))
		alert(errMsg[errCALASTNAME1]);
	else if (isBlank(form.TxtTel1.value) || !isNumeric(form.TxtTel1.value) ||!isMaxLen(form.TxtTel1.value, 10))
		alert (errMsg[errCATEL1]);


	//optional to have second user
	else if (isBlank(form.TxtUserID2.value))
	{
		if (!isBlank(form.TxtEmail2.value) || !isBlank(form.TxtTel2.value) || 
		    !isBlank(form.TxtFirstNm2.value) || !isBlank(form.TxtLastNm2.value))
			alert (errMsg[errNOUSER2]);
		else
			return true;
		return false;
	}
		//alert("User 2: Please enter a User ID.");
	else if (!isAlphaNumeric(form.TxtUserID2.value) || !isBetweenLen(form.TxtUserID2.value, 4, 15))
		alert(errMsg[errCAUSERID2]);
	else if (isBlank(form.TxtEmail2.value) || !isMaxLen(form.TxtEmail2.value, 50))
		alert(errMsg[errCAEMAIL2]);		
	else if (isBlank(form.TxtFirstNm2.value) || !isMaxLen(form.TxtFirstNm2.value, 20))
		alert(errMsg[errCAFIRSTNAME2]);
	else if (isBlank(form.TxtLastNm2.value) || !isMaxLen(form.TxtLastNm2.value, 20))
		alert(errMsg[errCALASTNAME2]);
	else if (isBlank(form.TxtTel2.value) || !isNumeric(form.TxtTel2.value) || !isMaxLen(form.TxtTel2.value, 10))
		alert (errMsg[errCATEL2]);
	else
		return true; 
	return false;
}

function validate2IUForm()	{
	form = document.Form;
	if (!form.CB.checked)
		alert (errMsg[errTC]);

	else if (!isBlank(form.TxtUserID1.value) && !isBlank(form.TxtUserID2.value) && (form.TxtUserID1.value == form.TxtUserID2.value))
		alert (errMsg[errSAMEUSERID]);
	else if (isBlank(form.TxtUserID1.value) || !isAlphaNumeric(form.TxtUserID1.value) || !isMaxLen(form.TxtUserID1.value, 15)  || !isBetweenLen(form.TxtUserID1.value, 4, 15))
		alert(errMsg[errCAUSERID1]);
	else if (isBlank(form.TxtEmail1.value) || !isMaxLen(form.TxtEmail1.value, 50))
		alert(errMsg[errCAEMAIL1]);		
	else if (isBlank(form.TxtTel1.value) || !isNumeric(form.TxtTel1.value) ||!isMaxLen(form.TxtTel1.value, 10))
		alert (errMsg[errCATEL1]);
	else if (isBlank(form.TxtFirstNm1.value) || !isMaxLen(form.TxtFirstNm1.value, 20))
		alert(errMsg[errCAFIRSTNAME1]);
	else if (isBlank(form.TxtLastNm1.value) || !isMaxLen(form.TxtLastNm1.value, 20))
		alert(errMsg[errCALASTNAME1]);

	//optional to have second user
	else if (isBlank(form.TxtUserID2.value))
	{
		if (!isBlank(form.TxtEmail2.value) || !isBlank(form.TxtTel2.value) || 
		    !isBlank(form.TxtFirstNm2.value) || !isBlank(form.TxtLastNm2.value))
			alert (errMsg[errNOUSER2]);
		else
			return true;
		return false
	}
		//alert("User 2: Please enter a User ID.");
	else if (!isAlphaNumeric(form.TxtUserID2.value) || !isBetweenLen(form.TxtUserID2.value, 4, 15))
		alert(errMsg[errCAUSERID2]);
	else if (isBlank(form.TxtEmail2.value) || !isMaxLen(form.TxtEmail2.value, 50))
		alert(errMsg[errCAEMAIL2]);		
	else if (isBlank(form.TxtTel2.value) || !isNumeric(form.TxtTel2.value) || !isMaxLen(form.TxtTel2.value, 10))
		alert (errMsg[errCATEL2]);
	else if (isBlank(form.TxtFirstNm2.value) || !isMaxLen(form.TxtFirstNm2.value, 20))
		alert(errMsg[errCAFIRSTNAME2]);
	else if (isBlank(form.TxtLastNm2.value) || !isMaxLen(form.TxtLastNm2.value, 20))
		alert(errMsg[errCALASTNAME2]);
	else
		return true; 
	return false;
}

//validate Login Form
function validateLoginForm()
{
	form = document.Form;
	if (isBlank(form.TxtUserID.value))
		alert(errMsg[errLOGINUSERID]);
	else if (isBlank(form.TxtPasswd.value))
		alert(errMsg[errLOGINPASSWORD]);
	else
		return true;
	return false;
}

//validate new Subscribe Form
function validateNewSubscribeForm(){		
	form = document.Form;
	if (!isBlank(form.TxtBlkHseNr.value) && !isMaxLen(form.TxtBlkHseNr.value, 10))
		alert(errMsg[errBLKHSENR]);
	else if (!isBlank(form.TxtStrCd.value) && !isMaxLen(form.TxtStrCd.value, 6))
		alert(errMsg[errSTRCD]);
	else if (!isBlank(form.TxtLevelNr.value) && !isMaxLen(form.TxtLevelNr.value, 3))
		alert(errMsg[errLEVELNR]);
	else if (isBlank(form.TxtPOBUnit.value) && !isMaxLen(form.TxtPOBUnit.value, 6))
		alert(errMsg[errPOBUNIT]);		
	else if (!isBlank(form.TxtBldgNm.value) && !isMaxLen(form.TxtBldgNm.value, 45))
		alert(errMsg[errBLDGNM]);
	else if (!isBlank(form.TxtPostCd.value) && !isMaxLen(form.TxtPostCd.value, 6))
		alert(errMsg[errPOSTCD]);
	else if (!isValidDate(form.TxtNewSubDateDay.value, form.TxtNewSubDateMonth.value, form.TxtNewSubDateYear.value))
		alert(errMsg[errSUBDATE]);
	else 
		return true;
	return false;
}

function validateERSubscribeForm()
{
	form = document.Form;

	if (!isValidDate(form.TxtNewSubDateDay.value, form.TxtNewSubDateMonth.value, form.TxtNewSubDateYear.value))
		alert(errMsg[errSUBDATE])
	else 
		return true;
	return false;
}

function validateGIROForm(){
		
	form = document.Form;
	 	
	 if (isBlank(form.TxtBankCode.value) || !isMaxLen(form.TxtBankCode.value, 4))
		alert(errMsg[errBANKCODE]);
	 else if (isBlank(form.TxtBranchCode.value) || !isMaxLen(form.TxtBranchCode.value, 5))
		alert(errMsg[errBRANCHCODE]);
	else if (isBlank(form.TxtBankAccountName.value) || !isMaxLen(form.TxtBankCode.value, 50))
		alert(errMsg[errBANKACCTNAME]);
	else if (isBlank(form.TxtBankAccountID.value) || !isMaxLen(form.TxtBankCode.value, 10))
		alert(errMsg[errBANKACCTID]);
	else if (isValidDate(form.TxtNewGIRODateDay.value, form.TxtNewGIRODateMonth.value, form.TxtNewGIRODateYear.value))
		alert(errMsg[errEFFECTIVEDATE]);
	else 
		return true;
	return false;
}



//validate new structured address form
function validateStructAddressForm1(){		
	form = document.Form;
	FieldValue1 = form.TxtBldgNm.value;
	FieldValue1 = FieldValue1.replace(/ /g,"");
	FieldValue1 = FieldValue1.toLowerCase();

	if (!isBlank(form.TxtBlkHseNr.value) && !isMaxLen(form.TxtBlkHseNr.value, 10))
		alert(errMsg[errBLKHSENR]);
	else if (!isBlank(form.TxtStrCd.value) && !isMaxLen(form.TxtStrCd.value, 6))
		alert(errMsg[errSTRCD]);
	else if (!isBlank(form.TxtLevelNr.value) && !isMaxLen(form.TxtLevelNr.value, 3))
		alert(errMsg[errLEVELNR]);
	else if (!isBlank(form.TxtPOBUnit.value) && !isMaxLen(form.TxtPOBUnit.value, 6))
		alert(errMsg[errPOBUNIT]);		
	else if (!isBlank(form.TxtBldgNm.value) && !isMaxLen(form.TxtBldgNm.value, 45))
		alert(errMsg[errBLDGNM]);
	else if (!isBlank(form.TxtPostCd.value) && !isMaxLen(form.TxtPostCd.value, 6))
		alert(errMsg[errPOSTCD]);
	else if (!isValidDate(form.TxtEffDateDay.value, form.TxtEffDateMonth.value, form.TxtEffDateYear.value))
		alert(errMsg[errEFFECTIVEDATE]);
	else 
		return true;
	return false;
}


//validate new structured address form
function validateStructAddressForm2(){		
	form = document.Form;
	FieldValue1 = form.TxtBldgNm.value;
	FieldValue1 = FieldValue1.replace(/ /g,"");
	FieldValue1 = FieldValue1.toLowerCase();

	if (!isBlank(form.TxtBlkHseNr.value) && !isMaxLen(form.TxtBlkHseNr.value, 10))
		alert(errMsg[errBLKHSENR]);
	else if (!isBlank(form.TxtStrCd.value) && !isMaxLen(form.TxtStrCd.value, 6))
		alert(errMsg[errSTRCD]);
	else if (!isBlank(form.TxtLevelNr.value) && !isMaxLen(form.TxtLevelNr.value, 3))
		alert(errMsg[errLEVELNR]);
	else if (!isBlank(form.TxtPOBUnit.value) && !isMaxLen(form.TxtPOBUnit.value, 6))
		alert(errMsg[errPOBUNIT]);		
	else if (!isBlank(form.TxtBldgNm.value) && !isMaxLen(form.TxtBldgNm.value, 45))
		alert(errMsg[errBLDGNM]);
	else if (!isBlank(form.TxtPostCd.value) && !isMaxLen(form.TxtPostCd.value, 6))
		alert(errMsg[errPOSTCD]);
	else 
		return true;
	return false;
}



function validateFSForm()
{
	form = document.Form;
	if (!isBlank(form.TxtAppNoCheckDigit.value) && !isBlank(form.TxtPNo.value))
	{
		alert (errMsg[errBOTHAPPNOPNO]);
		return false;
	}
	
	if ((!isBlank(form.TxtAppNo.value) && isBlank(form.TxtPNo.value)) ||
		 (isBlank(form.TxtAppNo.value) && !isBlank(form.TxtPNo.value))
	   )
	{
		if (!isBlank(form.TxtPNo.value) && 
		    (!isInteger(form.TxtPNo.value) || (!isLen(form.TxtPNo.value, 6) && !isLen(form.TxtPNo.value, 5))))
			alert (errMsg[errPNO]);
		else if (!isBlank(form.TxtAppNo.value) && 
		         (!isInteger(form.TxtAppNo.value) || (!isLen(form.TxtAppNo.value, 7) && !isLen(form.TxtAppNo.value, 9))))
			alert (errMsg[errAPPNO]);
		else if (!isBlank(form.TxtAppNoCheckDigit.value) && 
				 (!isInteger(form.TxtAppNoCheckDigit.value) || !isLen(form.TxtAppNoCheckDigit.value, 1)))
			alert (errMsg[errCHKDGT]); 
		else
			return true;
		return false;
	}
	alert (errMsg[errBOTHAPPNOPNO]);
	return false;
}

function validateFSRenewalForm()
{
	form = document.Form;

	if (isBlank(form.TxtAppNo.value)  || isBlank(form.TxtPNo.value))
	{
		alert (errMsg[errBLANKAPPNOPNO]);
		return false;
	}
	
	
	if ((!isBlank(form.TxtAppNo.value) || isBlank(form.TxtAppNoCheckDigit.value)) &&  !isBlank(form.TxtPNo.value))
	   
	{
		if (!isBlank(form.TxtPNo.value) && 
		    (!isInteger(form.TxtPNo.value) || (!isLen(form.TxtPNo.value, 6) && !isLen(form.TxtPNo.value, 5))))
			alert (errMsg[errPNO]);
		else if (!isBlank(form.TxtAppNo.value) && 
		         (!isInteger(form.TxtAppNo.value) || (!isLen(form.TxtAppNo.value, 7) && !isLen(form.TxtAppNo.value, 9))))
			alert (errMsg[errAPPNO]);
		else if (!isBlank(form.TxtAppNoCheckDigit.value) && 
				 (!isInteger(form.TxtAppNoCheckDigit.value) || !isLen(form.TxtAppNoCheckDigit.value, 1)))
			alert (errMsg[errCHKDGT]); 
		else
			return true;
		return false;
	}
	alert (errMsg[errBOTHAPPNOPNO]);
	return false;
}





function FormatNumber(num) 
{
	var numstring;
	var decimalpos;
	var len;
	
	numstring = new String(num);
	decimalpos = numstring.indexOf('.');
	len = numstring.length;

	if (decimalpos == -1)
		return num + ".00";
	else
	if (decimalpos == len-1)
		return num + "00";
	else
	if (decimalpos == len - 2) {
		return num + "0";}
	else
	if (decimalpos == len - 3)
		return numstring;
	else
		return FormatNumber(numstring.substring(0, len - 1));

}

function confirmation(){
		var question = confirm("Are you sure that you wish to submit the following information?");
		if (question!="0")
			return true;
		else
			return false;
	}
	
		
function isBlank(value)
	{
		if (value == null || value == "")
			return true;
		for (var index = 0; index < value.length; index++) {
			var c = value.charAt(index);
			var d = value.charCodeAt(index);
			if (c != ' ' && c != '\n' && c != '\t' && d !=13)
				return false;
		}
		return true;
	}

function isLeapYear(value) {
	if (value % 100 == 0 && value % 400 == 0)
		return true;
	if (value % 4 == 0)
		return true;
	return false;
	}

function isValidDate(value1, value2, value3){

	if ((value1==31 || value1==30) && value2==2)
		return false;
	
	if (value1==31 && (value2==4 || value2==6 || value2==9 || value2==11))
		return false;

	if (value1==29 && value2==2 && !isLeapYear(value3))
		return false;

	return true;	

	}
	
function isInteger(value){
	var valid = "-/\#0123456789";
		var ok = "yes";
		var temp;
		for (var i=0; i<value.length; i++) {
			temp = "" +value.substring(i, i+1);
			if (valid.indexOf(temp) == "-1") ok = "no";
		}
			if (ok == "no") {
				return false;
   		}
  		return true;
	}

function isNumeric(value){
	return isInteger(value);
	}
	
function isAlphaNumeric(value){
	var valid = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
		var ok = "yes";
		var temp;
		for (var i=0; i<value.length; i++) {
			temp = "" +value.substring(i, i+1);
			if (valid.indexOf(temp) == "-1") ok = "no";
		}
			if (ok == "no") {
				return false;
   		}
  		return true;
	}

//-------------------------------Added by Welly 02 August 2008 -------------------------------------	
function isAlphabet(value){
	var valid = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
		var ok = "yes";
		var temp;
		for (var i=0; i<value.length; i++) {
			temp = "" +value.substring(i, i+1);
			if (valid.indexOf(temp) == "-1") ok = "no";
		}
			if (ok == "no") {
				return false;
   		}
  		return true;
	}
//--------------------------------------------------------------------------------------------------

function isLen(value, len)
{
	var str = value;
	if (str.length != len)
		return false;
	return true;
}


function isMinLen(value, len)
{
	if (value.length < len)
		return false;
	return true;
}


function isMaxLen(value, len)
{
	if (value.length > len)
		return false;
	return true;
}


function isBetweenLen(value, len1, len2)
{
	if (isMinLen(value, len1) && isMaxLen(value, len2))
		return true;
	return false;
}


function isPostive(value)
{
	if (value > 0)
		return true;
	return false;
}

//-------------------------Added by Welly 16 November 2009 for SR091102---------
function ValidatePostalCode(strL,string,string2)
{
	zz = string.indexOf(string2);
	
	if(zz==0)
	{
		FormDes("VBox postal code is disallowed",strL);
		return false;
	}

	FormDes("",strL);	
	return true;
	
}

function FormDes(str,str1)
{
	var html="<table><tr><td><font color=Tomato><b>" + str + "</b></font></td></tr></table>"
	if(document.Form.all)
	{
		str1.innerHTML = html
		if(str.length>0)window.location="#" + str1.name;
	}	
	if(document.layers)
	{
		if(str.length>0)
		{
			alert(str)
			//str1.document.focus();
		}
		//document.str1.document.write(html);
		//document.str1.document.close();
	}
}
//------------------------------------------------------------------------------
