function ValidateApplication(jvarMode) {
	jvarApplication_Name 		  	= trim(document.ApplicationForm.Application_Name.value);
	jvarApplication_NRIC 		  	= trim(document.ApplicationForm.Application_NRIC.value);
	jvarApplication_Gender 			= document.ApplicationForm.Application_Gender.value;
	jvarApplication_DOB_DD			= document.ApplicationForm.Application_DOB_DD.value;
	jvarApplication_DOB_MM			= document.ApplicationForm.Application_DOB_MM.value;
	jvarApplication_DOB_YY			= document.ApplicationForm.Application_DOB_YY.value;
	jvarApplication_Contact_Home	= trim(document.ApplicationForm.Application_Contact_Home.value);
	jvarApplication_Contact_Office	= trim(document.ApplicationForm.Application_Contact_Office.value);
	jvarApplication_Contact_HP		= trim(document.ApplicationForm.Application_Contact_HP.value);
	jvarApplication_Contact_Fax		= trim(document.ApplicationForm.Application_Contact_Fax.value);
	jvarApplication_Address1		= trim(document.ApplicationForm.Application_Address1.value);
	jvarApplication_PostalCode		= trim(document.ApplicationForm.Application_PostalCode.value);
	
	jvarError = "";
	if (jvarApplication_Name == "") {
		jvarError += '- Name (as in NRIC) has to be entered.\n';
	}
	if (jvarApplication_NRIC == "") {
		jvarError += '- NRIC has to be entered.\n';
	}
	if (jvarApplication_Gender == "") {
		jvarError += '- Gender has to be selected.\n';
	}
	if (check_date(jvarApplication_DOB_DD, jvarApplication_DOB_MM, jvarApplication_DOB_YY) == false) {
		jvarError += '- Date of Birth should be entered with a valid date.\n';
	}
	if ((jvarApplication_Contact_Home.length == 0) && (jvarApplication_Contact_Office.length == 0) && (jvarApplication_Contact_HP.length == 0)) {
		jvarError += '- Either one of the contacts should be entered (Home, Office or HP).\n';
	}
	else {
		if (jvarApplication_Contact_Home != "") {
			if (jvarApplication_Contact_Home.length != 8) {
				jvarError += '- Contact (Home) should be entered with a valid phone number.\n';
			}
			else {
				if (isNaN(jvarApplication_Contact_Home)) {
					jvarError += '- Contact (Home) should be entered with a valid phone number.\n';
				}
			}
		} 
		if (jvarApplication_Contact_Office != "") {
			if (jvarApplication_Contact_Office.length != 8) {
				jvarError += '- Contact (Office) should be entered with a valid phone number.\n';
			}
			else {
				if (isNaN(jvarApplication_Contact_Office)) {
					jvarError += '- Contact (Office) should be entered with a valid phone number.\n';
				}
			}
		} 
		if (jvarApplication_Contact_HP != "") {
			if (jvarApplication_Contact_HP.length != 8) {
				jvarError += '- Contact (HP) should be entered with a valid phone number.\n';
			}
			else {
				if (isNaN(jvarApplication_Contact_HP)) {
					jvarError += '- Contact (HP) should be entered with a valid phone number.\n';
				}
			}
		} 
	}
	
	if (jvarApplication_Contact_Fax != "") {
		if (jvarApplication_Contact_Fax.length != 8) {
			jvarError += '- Contact (Fax) should be entered with a valid phone number.\n';
		}
		else {
			if (isNaN(jvarApplication_Contact_Fax)) {
				jvarError += '- Contact (Fax) should be entered with a valid phone number.\n';
			}
		}
	} 
	if (jvarApplication_Address1 == "") {
		jvarError += '- Address has to be entered.\n';
	}
	if (jvarApplication_PostalCode.length != 6) {
		jvarError += '- Postal Code should be entered with a valid number.\n';
	}
	else {
		if (isNaN(jvarApplication_PostalCode)) {
			jvarError += '- Postal Code should be entered with a valid number.\n';
		}
	}
	/*****************************************/
	/* START OF VALIDATION FOR PUBLIC FIELDS */
	/*****************************************/
	if (jvarMode == 'Public') {
		jvarApplication_MaritalStatus 	= document.ApplicationForm.Application_MaritalStatus.value;
		jvarCardType_ID		  			= document.ApplicationForm.CardType_ID;
		
		if (jvarApplication_MaritalStatus == "") {
			jvarError += '- MaritalStatus has to be selected.\n';
		}
				
		jvarCardTypeSelected = false;
		
		if (document.ApplicationForm.CardType_Count.value == 1) {
			if (jvarCardType_ID.checked == true) {
				jvarCardTypeSelected = true;
			}
		}
		else {
			for (i=0; i<jvarCardType_ID.length; i++) {
				if (jvarCardType_ID[i].checked == true) { 
					jvarCardTypeSelected = true; 
					break;
				}
			}
		}
		
		if (jvarCardTypeSelected == false) {
			jvarError += '- CardType has to be selected.\n';
		}
	}

	/*************************************************/
	/* START OF VALIDATION FOR ADMINISTRATIVE FIELDS */
	/*************************************************/
	if (jvarMode == 'Admin') {
		jvarPaymentMode_ID = document.ApplicationForm.PaymentMode_ID.value;
	
		jvarPaymentMode_ID					= document.ApplicationForm.PaymentMode_ID.value;
		jvarApplication_Date_DD				= document.ApplicationForm.Application_Date_DD.value;
		jvarApplication_Date_MM				= document.ApplicationForm.Application_Date_MM.value;
		jvarApplication_Date_YY				= document.ApplicationForm.Application_Date_YY.value;
		jvarApplication_CardIssueDate_DD	= document.ApplicationForm.Application_CardIssueDate_DD.value;
		jvarApplication_CardIssueDate_MM	= document.ApplicationForm.Application_CardIssueDate_MM.value;
		jvarApplication_CardIssueDate_YY	= document.ApplicationForm.Application_CardIssueDate_YY.value;
		
		if (jvarPaymentMode_ID == "") {
			jvarError += '- Payment Mode has to be selected.\n';
		}
		if (check_date(jvarApplication_Date_DD, jvarApplication_Date_MM, jvarApplication_Date_YY) == false) {
			jvarError += '- Application Date should be entered with a valid date.\n';
		}
		if ((jvarApplication_CardIssueDate_DD != '') || (jvarApplication_CardIssueDate_MM != '') || (jvarApplication_CardIssueDate_YY != '')) {
			if (check_date(jvarApplication_CardIssueDate_DD, jvarApplication_CardIssueDate_MM, jvarApplication_CardIssueDate_YY) == false) {
				jvarError += '- Card Issue Date should be entered with a valid date.\n';
			}
		}
	}
	
	
	if (jvarError == "") return true
	else {
		jvarError = 'Please complete the following information:\n' + jvarError;
		alert(jvarError);
		return false;
	}
}



function ValidateAdminApplication() {
	jvarApplication_Name 		  	= trim(document.ApplicationForm.Application_Name.value);
	jvarApplication_NRIC 		  	= trim(document.ApplicationForm.Application_NRIC.value);
	jvarApplication_DOB_DD			= document.ApplicationForm.Application_DOB_DD.value;
	jvarApplication_DOB_MM			= document.ApplicationForm.Application_DOB_MM.value;
	jvarApplication_DOB_YY			= document.ApplicationForm.Application_DOB_YY.value;
	jvarApplication_Contact_Home	= trim(document.ApplicationForm.Application_Contact_Home.value);
	jvarApplication_Contact_Office	= trim(document.ApplicationForm.Application_Contact_Office.value);
	jvarApplication_Contact_HP		= trim(document.ApplicationForm.Application_Contact_HP.value);
	jvarApplication_Contact_Fax		= trim(document.ApplicationForm.Application_Contact_Fax.value);
	jvarApplication_Address1		= trim(document.ApplicationForm.Application_Address1.value);
	jvarApplication_PostalCode		= trim(document.ApplicationForm.Application_PostalCode.value);
	
	jvarError = "";
	if (jvarApplication_Name == "") {
		jvarError += '- Name (as in NRIC) has to be entered.\n';
	}
	if (jvarApplication_NRIC == "") {
		jvarError += '- NRIC has to be entered.\n';
	}
	if ((jvarApplication_DOB_DD != '') || (jvarApplication_DOB_MM != '') || (jvarApplication_DOB_YY != '')) {
		if ((jvarApplication_DOB_DD != '') && (jvarApplication_DOB_MM != '') && (jvarApplication_DOB_YY != '')) {
			if (check_date(jvarApplication_DOB_DD, jvarApplication_DOB_MM, jvarApplication_DOB_YY) == false) {
				jvarError += '- Date of Birth should be entered with a valid date.\n';
			}
		}
		else {
			jvarError += '- Date of Birth should be entered with a valid date.\n';
		}
	}
	if ((jvarApplication_Contact_Home.length == 0) && (jvarApplication_Contact_Office.length == 0) && (jvarApplication_Contact_HP.length == 0)) {
		jvarError += '- Either one of the contacts should be entered (Home, Office or HP).\n';
	}
	else {
		if (jvarApplication_Contact_Home != "") {
			if (jvarApplication_Contact_Home.length != 8) {
				jvarError += '- Contact (Home) should be entered with a valid phone number.\n';
			}
			else {
				if (isNaN(jvarApplication_Contact_Home)) {
					jvarError += '- Contact (Home) should be entered with a valid phone number.\n';
				}
			}
		} 
		if (jvarApplication_Contact_Office != "") {
			if (jvarApplication_Contact_Office.length != 8) {
				jvarError += '- Contact (Office) should be entered with a valid phone number.\n';
			}
			else {
				if (isNaN(jvarApplication_Contact_Office)) {
					jvarError += '- Contact (Office) should be entered with a valid phone number.\n';
				}
			}
		} 
		if (jvarApplication_Contact_HP != "") {
			if (jvarApplication_Contact_HP.length != 8) {
				jvarError += '- Contact (HP) should be entered with a valid phone number.\n';
			}
			else {
				if (isNaN(jvarApplication_Contact_HP)) {
					jvarError += '- Contact (HP) should be entered with a valid phone number.\n';
				}
			}
		} 
	}
	
	if (jvarApplication_Contact_Fax != "") {
		if (jvarApplication_Contact_Fax.length != 8) {
			jvarError += '- Contact (Fax) should be entered with a valid phone number.\n';
		}
		else {
			if (isNaN(jvarApplication_Contact_Fax)) {
				jvarError += '- Contact (Fax) should be entered with a valid phone number.\n';
			}
		}
	} 
	if (jvarApplication_Address1 == "") {
		jvarError += '- Address has to be entered.\n';
	}
	if (jvarApplication_PostalCode.length != 6) {
		jvarError += '- Postal Code should be entered with a valid number.\n';
	}
	else {
		if (isNaN(jvarApplication_PostalCode)) {
			jvarError += '- Postal Code should be entered with a valid number.\n';
		}
	}
	
	jvarPaymentMode_ID = document.ApplicationForm.PaymentMode_ID.value;

	jvarPaymentMode_ID					= document.ApplicationForm.PaymentMode_ID.value;
	jvarApplication_Date_DD				= document.ApplicationForm.Application_Date_DD.value;
	jvarApplication_Date_MM				= document.ApplicationForm.Application_Date_MM.value;
	jvarApplication_Date_YY				= document.ApplicationForm.Application_Date_YY.value;
	jvarApplication_CardIssueDate_DD	= document.ApplicationForm.Application_CardIssueDate_DD.value;
	jvarApplication_CardIssueDate_MM	= document.ApplicationForm.Application_CardIssueDate_MM.value;
	jvarApplication_CardIssueDate_YY	= document.ApplicationForm.Application_CardIssueDate_YY.value;
	
	if (jvarPaymentMode_ID == "") {
		jvarError += '- Payment Mode has to be selected.\n';
	}
	if (check_date(jvarApplication_Date_DD, jvarApplication_Date_MM, jvarApplication_Date_YY) == false) {
		jvarError += '- Application Date should be entered with a valid date.\n';
	}
	if ((jvarApplication_CardIssueDate_DD != '') || (jvarApplication_CardIssueDate_MM != '') || (jvarApplication_CardIssueDate_YY != '')) {
		if (check_date(jvarApplication_CardIssueDate_DD, jvarApplication_CardIssueDate_MM, jvarApplication_CardIssueDate_YY) == false) {
			jvarError += '- Card Issue Date should be entered with a valid date.\n';
		}
	}
	
	
	if (jvarError == "") return true
	else {
		jvarError = 'Please complete the following information:\n' + jvarError;
		alert(jvarError);
		return false;
	}
	
}
