var bayvApplyNow = {
    mintBayvEmploymentStatus: 'Unemployed',
    mtxtEmployer: null,
    mtxtOccupation: null,
    mPreviousAddress: null,
    mPreviousAddressColumns: [],

    init: function(txtEmployerID, txtOccupationID, previousAddress, previousAddressColumns) {
        var intLength = previousAddressColumns.length;

        bayvApplyNow.mtxtEmployer = $(txtEmployerID);
        bayvApplyNow.mtxtOccupation = $(txtOccupationID);
        if (bayvApplyNow.mtxtEmployer != null) {
            bayvApplyNow.mtxtEmployer.disabled = true;
        }
        if (bayvApplyNow.mtxtOccupation != null) {
            bayvApplyNow.mtxtOccupation.disabled = true;
        }

        bayvApplyNow.mPreviousAddress = $(previousAddress);
        if (bayvApplyNow.mPreviousAddress != null) {
            bayvApplyNow.mPreviousAddress.hide();
        }
        bayvApplyNow.mPreviousAddressColumns = [];
        for (var intIndex = 0; intIndex < intLength; intIndex++) {
            bayvApplyNow.mPreviousAddressColumns.push($(previousAddressColumns[intIndex]))
            if (bayvApplyNow.mPreviousAddressColumns[intIndex] != null) {
                bayvApplyNow.mPreviousAddressColumns[intIndex].disabled = true;
            }
        }
        formDisable(false);
    },

  


    ValidateHomeTelephone: function(that) {
        var txtTelephone = $(that);
        var trimtxtTelephone = txtTelephone.value.trim();
        if (trimtxtTelephone == '')
            return true;
	
	trimtxtTelephone = removeSpaces(trimtxtTelephone);

	var rexp = /^\d{10}$/;;
        if (!rexp.test(trimtxtTelephone))
	{
		var rexp2 = /^\d{11}$/;;
        	if (!rexp2.test(trimtxtTelephone))
		{
	    		alert('The home telephone number you have entered should be 10 or 11 digits.');
            		return false;
		}
	}

        var rexp3 = /^(01|02)\d{8}$/;
        if (!rexp3.test(trimtxtTelephone))
	{
		var rexp4 = /^(01|02)\d{9}$/;
        	if (!rexp4.test(trimtxtTelephone))
		{	
	    		alert('The home telephone number you have entered should being with 01 or 02.');
            		return false;
		}

	}

        
        return true;
    },

    ValidateMobileTelephone: function(that) {
        var txtMobile = $(that);
        var trimtxtMobile = txtMobile.value.trim();
        if (trimtxtMobile == '') {
            var obj = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs6d22d701496140978a178a48d4e93a44_mdcdb9467db5230479c95bf4f9c4a94c5e6_txtValue');
            if (obj) {
                if (obj.getValue() == '') {
                    alert('Please specify Home telephone or Mobile number.');
                    return false;
                }
                else
                    return true;
            }
        }

	trimtxtMobile = removeSpaces(trimtxtMobile );


	var rexp = /^\d{11}$/;
        if (!rexp.test(trimtxtMobile))
	{
        	alert('The mobile number you have entered should be 11 digits.');
       		return false;
	}

        var rexp2 = /^07\d{9}$/;
        if (!rexp2.test(trimtxtMobile))
	{
        	alert('The mobile number you have entered should begin with 07.');
       		return false;
	}


        return true;
    },

    ValidateDOB: function(that) {
        var txt = $(that).select('input');
        if ((txt[0].value.trim() == '') || (txt[1].value.trim() == '') || (txt[2].value.trim() == '')) {
            return false
        }
        return true;
    },

    ValidateGender: function(that) {
        var rad = $(that).select('input');
        if ((!rad[0].checked) && (!rad[1].checked)) {
            return false;
        }
        return true;

    },

    EmploymentStatus_changed: function(that) {

        bayvApplyNow.mintBayvEmploymentStatus = that.value;
        if (bayvApplyNow.mintBayvEmploymentStatus != 'Unemployed') {
            bayvApplyNow.mtxtEmployer.disabled = false;
            bayvApplyNow.mtxtOccupation.disabled = false;
            bayvApplyNow.mtxtEmployer.up().select('label')[0].innerHTML = '<em>*</em> Employer';
            bayvApplyNow.mtxtOccupation.up().select('label')[0].innerHTML = '<em>*</em> Occupation';
        }
        else {
            bayvApplyNow.mtxtEmployer.disabled = true;
            bayvApplyNow.mtxtOccupation.disabled = true;
            bayvApplyNow.mtxtEmployer.up().select('label')[0].innerHTML = 'Employer';
            bayvApplyNow.mtxtOccupation.up().select('label')[0].innerHTML = 'Occupation';
        }
    },

    ValidateEmployer: function(that) {
        if (bayvApplyNow.mintBayvEmploymentStatus != 'Unemployed') {
            if (that.value.trim() == '') {
                return false;
            }
        }
        return true;
    },

    Years_changed: function(that) {

        var intLength = bayvApplyNow.mPreviousAddressColumns.length;
        var blnReadOnly = false;
        var intYears = parseInt(that.value, 10);

        if ((!isNaN(intYears)) && (intYears >= 3)) {
            blnReadOnly = true;
        }

        for (var intIndex = 0; intIndex < intLength; intIndex++) {
            if (bayvApplyNow.mPreviousAddressColumns[intIndex] != null) {
                bayvApplyNow.mPreviousAddressColumns[intIndex].disabled = blnReadOnly;
            }
        }
        if (blnReadOnly == true) {
            bayvApplyNow.mPreviousAddress.hide();
        } else {
            bayvApplyNow.mPreviousAddress.show();
        }
    }

};

function removeSpaces(thestring)
{
	return thestring.split(' ').join('');
}


function atLeastOne(that, intIndex)
{
	var objTelephone;
	var objMobile;
	var objEmail;
	switch(intIndex)
	{
		case 1:
			objTelephone = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs12dc0275c3bc4f4f9c84f2a810c4b336_mdcf6bc7034bb274f26a778dc1733ba42f7_txtValue');
			objMobile = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs12dc0275c3bc4f4f9c84f2a810c4b336_mdcb30e0a5cf2c14d6186c8ee7890394254_txtValue');
			objEmail = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs12dc0275c3bc4f4f9c84f2a810c4b336_mdcad514e7b8a494182a179797ad7615ff2_txtValue');
			
			break;
		case 2:
			objTelephone = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs2464c9081d9a4a958459c3a2d8c3cd69_mdccfcf2024ab4f4220aa6a95da3b114891_txtValue');
			objMobile = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs2464c9081d9a4a958459c3a2d8c3cd69_mdcc03e17945ca549f98911a0e961276612_txtValue');
			objEmail = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs2464c9081d9a4a958459c3a2d8c3cd69_mdc9c1fe6473d7f470388cb99d601534351_txtValue');		
			break;
		case 3:
			objTelephone = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs87f7aa5ade0b46f58f3b53c5ac44bc0f_mdcc713bde2648b4aeebba914b686a614cc_txtValue');
			objMobile = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs87f7aa5ade0b46f58f3b53c5ac44bc0f_mdc8706396511d74b9b833eac4fb0b78c24_txtValue');
			objEmail = $('ctl00_dash_20199f6633b243f2905496ffab383dda_divInner_MetaData_mcs87f7aa5ade0b46f58f3b53c5ac44bc0f_mdc7bed181972304ea6a5088c54ae329379_txtValue');		
			break;
	}
	if(objTelephone && objMobile && objEmail)
	{
		if(objTelephone.value == '' && objMobile.value == '' && objEmail.value == '')
		{
			return false;
		}
	}

	return true;
}


