<!--
    
    function checkTab(src,n,formName,targ) {

        if(src.value.length == n) {
            eval('document.'+formName+'.'+targ+'.focus()');
        }

    }

    // Validating an Email Address.
    function IsEmail(str){

        var emailFormat = /^\w(\.?[\w-])*@\w(\.?[\w-])*\.[a-zA-Z]{2,6}(\.[a-zA-Z]{2})?$/i;

        if (str.search(emailFormat) == -1)
                return false;

        ind = str.indexOf("@");
        if(ind == -1)
            return false;
        ind1 = str.indexOf(".",ind);
        if(ind1 == -1)
            return false;
        if(str.length == ind1 + 1)
            return false;


        return true;
    }

    // Determining if a variable is a number.
    function IsNum(val) {
        pattern = /^[0-9]*$/;
        if(pattern.test(val)==false) {
            return false;
        }
        return true;
    }

    // Validating whether a number is a decimal or not.
    function isDecimal(str) {
        return str != "" ? /^\d*\.?\d*$/.test( str ) : false;
    }

    // Validating the un-subscribe form
    function validateUnSubForm(form) {

        if(!IsEmail(form.email.value)) {
            alert("'" + form.email.value + "' is not a valid email address.");
            form.email.focus();
            return false;
        }
        return true;

    }

    // Validating the SSN form on the Auto Thank you page.
    function validateSSN_from_multi_fields(form) {

        // need to validate the length of all the fields submitted, make sure data is correct.
        if(
            (form.ssn_1.value.length < 3) ||
            (form.ssn_2.value.length < 2) ||
            (form.ssn_3.value.length < 4)
        ) {
            return false;
        }

        // checking to make sure the consumer filled in all numbers.
        if(
            (!IsNum(form.ssn_1.value)) ||
            (!IsNum(form.ssn_2.value)) ||
            (!IsNum(form.ssn_3.value))
        ) {
            return false;
        }

        // no errors yet .. so lets return true.
        return true;
        
    }

    function validateSSN(form) {
        
        // Removing any dashes ( - ) from the string
        var rExp = /-/gi;
        var tmp_str = form.SSN.value.replace(rExp, "");
        var require_length = 9;

        // Checking to make sure we have the correct length
        if(tmp_str.length < require_length) {
            return false;
        }

        // Making sure we only have numbers in the SSN
        if(!IsNum(tmp_str)) {
            return false;
        }

        // If we have made it this far with no errors, then we ..
        return true;

    }

    // Validating the vehicle selections.
    function validateVehicleSelections(form) {

        for( var i = 0; i < num_quotes; i++) {

            // Validating the Make
            if( eval('form.makeid' + i).value == '') {
                alert('Please select a Vehicle Make.');
                eval('form.makeid' + i).focus();
                return false;
            }

            // Validating the Year
            if( 
                (eval('form.year' + i).value == '') ||
                (eval('form.year' + i).value == 'Select Year')
            ) {
                alert('Please select a Vehicle Year.');
                eval('form.year' + i).focus();
                return false;
            }

            // Validating the Model
            if( eval('form.trims' + i).value == '') {
                alert('Please select a Vehicle Model.');
                eval('form.trims' + i);
                return false;
            }

        }

        // If we made it this far, we don't have an error.
        return true;

    }

    function  validateMultiQuoteForm(form) {

        if(!validateVehicleSelections(form)) {
            return false;
        } 

        return true;

    }

    // Validing New Car Quote Form.
    function validateNewCarQuote(form) {

        if(form.trim_level.value == '') {
            alert("A Trim Level is required");
            form.trim_level.focus();
            return false;
        }

        // Validating First Name
        if(form.f_name.value == "") {
            alert("Please fill in your First Name.");
            form.f_name.focus();
            return false;
        }

        // Validating Last name
        if(form.l_name.value == "") {
            alert("Please fill in your Last Name.");
            form.l_name.focus();
            return false;
        }

        // Validating Email Address
        if (form.email.value == "")  {
            alert( "Please enter your Email Address." );
            form.email.focus();
            return false;
        }

        if (!IsEmail(form.email.value)) {
            alert(form.email.value + ' is not a valid Email Address');
            form.email.focus();
            return false;
        }

        // Validating Steet Address
        if(form.address1.value == "") {
            alert("Please fill in your Street Address.");
            form.address1.focus();
            return false;
        }
        
        // Validating City
        if(form.city.value == "") {
            alert("Please fill in your City.");
            form.city.focus();
            return false;
        }

        // Validating State
        if(form.state.value == "") {
            alert("Please select a State.");
            form.state.focus();
            return false;
        }

        // Validating Zip Code
        if (
            (form.zip.value == "") ||
            (!IsNum(form.zip.value)) ||
            (form.zip.value.length != 5)
        ) {
            alert( "Please enter your Zip Code." );
            form.zip.focus();
            return false;
        }

        // Validating Phone Number
        if (
                (
                    (form.dayphone_1.value == "") ||
                    (form.dayphone_2.value == "") ||
                    (form.dayphone_3.value == "")
                ) || (
                    (form.dayphone_1.value.length != 3) ||
                    (form.dayphone_2.value.length != 3) ||
                    (form.dayphone_3.value.length != 4)
                ) || (
                    (!IsNum(form.dayphone_1.value)) ||
                    (!IsNum(form.dayphone_2.value)) ||
                    (!IsNum(form.dayphone_3.value))
                )

        ) {
            alert( "Please enter a valid Home Phone." );
            form.dayphone_1.focus();
            return false;
        }

        // Validating the Purchase Method
        if(form.method.value == "") {
            alert('Please select a Purchase Method.');
            form.method.focus();
            return false;
        }

        // If we have made it this far, then all the required fields are filled in with valid data.

        // Disabling the submit button so the consumer doesn't keep clicking it if they are on a laggy connection
        var buttonClass = 'buttons_clicked';
        if(form.submit_button) {
	        form.submit_button.value='Searching ..... ';
	        form.submit_button.className=buttonClass;
	        form.submit_button.disabled=true
	    }

        // return 'true' back to the form
        return true;

    }

    function validateNewFinanceQuote(form) {

        // Validating the SSN
        if(!validateSSN(form)) {
            alert('\'' + form.SSN.value + '\' is not a valid Social Security Number. Please correct this.');
            form.SSN.focus();
            return false;
        }

        if(form.Employer.value.length < 1) {
            alert("Please fill in a valid Employer.");
            form.Employer.focus();
            return false;
        }

        if(form.JobTitle.value.length < 1) {
            alert("Please fill in a valid Job Title.");
            form.JobTitle.focus();
            return false;
        }

         // Validating Work Phone Number
        if (
                (
                    (form.WorkPhone0.value == "") ||
                    (form.WorkPhone1.value == "") ||
                    (form.WorkPhone2.value == "")
                ) || (
                    (form.WorkPhone0.value.length != 3) ||
                    (form.WorkPhone1.value.length != 3) ||
                    (form.WorkPhone2.value.length != 4)
                ) || (
                    (!IsNum(form.WorkPhone0.value)) ||
                    (!IsNum(form.WorkPhone1.value)) ||
                    (!IsNum(form.WorkPhone2.value))
                )

        ) {
            alert( "Please enter a valid Work Phone." );
            form.WorkPhone0.focus();
            return false;
        }

        // Validating Gross Monthly Income
        var inc_test = form.money.value.search(/^\d{1,3}(,?\d{3})*\.?(\d{1,2})?$/);

        if(
            form.MonthlyIncome.value < 1800
        ) {
            alert("You must state a Gross Monthly Income of at least $1800.");
            form.MonthlyIncome.focus();
            return false;
        } else if(
            //!IsNum(form.MonthlyIncome.value)
            inc_test == -1
        ) {
            alert("Please enter a valid Gross monthly Income.");
            form.MonthlyIncome.focus();
            return false;
        }

        // Disabling the submit button so the consumer doesn't keep clicking it if they are on a laggy connection
        form.submit_button.value='Searching ..... ';
        form.submit_button.disabled=true

        // return 'true' back to the form
        return true;

    }

    function validateLoanForm(form) {

        // If we have made it this far, then all the required fields are filled in with valid data.

        if(!validateSSN(form)) {
            alert("Please fill in a valid Social Security Number.");
            form.ssn_1.focus();
            return false;
        }

        if(form.employer.value.length < 1) {
            alert("Please fill in a valid Employer.");
            form.employer.focus();
            return false;
        }

        if(form.jobtitle.value.length < 1) {
            alert("Please fill in a valid Job Title.");
            form.jobtitle.focus();
            return false;
        }

        // Validating Work Phone Number
        if (
                (
                    (form.workphone_1.value == "") ||
                    (form.workphone_2.value == "") ||
                    (form.workphone_3.value == "")
                ) || (
                    (form.workphone_1.value.length != 3) ||
                    (form.workphone_2.value.length != 3) ||
                    (form.workphone_3.value.length != 4)
                ) || (
                    (!IsNum(form.workphone_1.value)) ||
                    (!IsNum(form.workphone_2.value)) ||
                    (!IsNum(form.workphone_3.value))
                )

        ) {
            alert( "Please enter a valid Work Phone." );
            form.workphone_1.focus();
            return false;
        }

        // Validating Gross Monthly Income
        if(
            form.income.value < 1800
        ) {
            alert("You must state a Gross Monthly Income of at least 1800.");
            form.income.focus();
            return false;
        } else if(
            !IsNum(form.income.value)
        ) {
            alert("Please enter a valid Gross monthly Income.");
            form.income.focus();
            return false;
        }

        // Disabling the submit button so the consumer doesn't keep clicking it if they are on a laggy connection
        form.submit.value='Searching ..... ';
        form.submit.disabled=true

        // return 'true' back to the form
        return true;

    }

    // Validating the Purchasing Power Form.
    function validate_purchase_power_form(form) {

        // Next two blocks validate the Down Payment field.
        if( !IsNum( Math.round(form.down_payment.value.replace(/,/,"")) ) ) {
            alert('\'Down Payment\' must be a valid dollar amount.');
            form.down_payment.focus();
            return false;
        }

        if(form.down_payment.value < 1.00) {
            alert('\'Down Payment\' must be at least 1.00.');
            form.down_payment.focus();
            return false;
        }

        // Next block validates the Housing field.
        if(form.liv_arr.value == "") {
            alert('\'Housing - Own/Rent\' must be either \'Own\' or \'Rent\'.');
            form.liv_arr.focus();
            return false;
        }

        // Next two blocks validates the Monthly Housing Payment field.
        if( !IsNum( Math.round(form.monthly_payment.value.replace(/,/,"")) ) ) {
            alert('\'Monthly Housing Payment\' must be a valid dollar amount.');
            form.monthly_payment.focus();
            return false;
        }

        // Next two blocks validate the Annual Household Income.
        if( !IsNum( Math.round(form.annual_income.value.replace(/,/,"")) ) ) {
            alert('\'Annual Household Income\' must be a valid dollar amount.');
            form.annual_income.focus();
            return false;
        }

        if(Math.round(form.annual_income.value) < 20000) {
            alert('\'Annual Household Income\' must be at least 20,000.00.');
            form.annual_income.focus();
            return false;
        }

        // Next three blocks validate the trade in monthly payment fields.
        if(
            (form.replace_veh_payment_1.value != '') &&
            (form.replace_veh_payment_1.value != 'Vehicle 1')
        ) {
            if( !IsNum( Math.round(form.replace_veh_payment_1.value.replace(/,/,"")) ) ) {
                alert('\'Current Vehicle Monthly Payment (Vehicle 1) can only be blank, \'0\' or a dollar amount.');
                form.replace_veh_payment_1.focus();
                return false;
            }
        }

        if(
            (form.replace_veh_payment_2.value != '') &&
            (form.replace_veh_payment_2.value != 'Vehicle 2')
        ) {
            if( !IsNum( Math.round(form.replace_veh_payment_2.value.replace(/,/,"")) ) ) {
                alert('\'Current Vehicle Monthly Payment (Vehicle 2) can only be blank, \'0\' or a dollar amount.');
                form.replace_veh_payment_2.focus();
                return false;
            }
        }

        if(form.trade_in.value == 3) {

            if(
                (
                    (form.replace_veh_payment_1.value == '') ||
                    (form.replace_veh_payment_1.value == 'Vehicle 1') ||
                    (form.replace_veh_payment_1.value == 0)
                ) || (
                    (form.replace_veh_payment_2.value == '') ||
                    (form.replace_veh_payment_2.value == 'Vehicle 1') ||
                    (form.replace_veh_payment_2.value == 0)
                )
            ) {

                alert('You must fill in \'Current Monthly Payments\' for both vehicles.');
                form.replace_veh_payment_1.focus();
                return false;
                
            }

        }

        if(form.trade_in.value != '') {
            switch(form.trade_in.value) {
                case '1':
                    if( (form.replace_veh_payment_1.value == '') || ( !IsNum( Math.round(form.replace_veh_payment_1.value) ) ) ) {
                        alert('You must fill in a valid dollar value for \'Current Vehicle Monthly Payment (Vehicle 1)\'.');
                        form.replace_veh_payment_1.focus();
                        return false;
                    }
                break;
                case '2':
                    if( (form.replace_veh_payment_2.value == '') || ( !IsNum( Math.round(form.replace_veh_payment_2.value) ) ) ) {
                        alert('You must fill in a valid dollar value for \'Current Vehicle Monthly Payment (Vehicle 2)\'.');
                        form.replace_veh_payment_2.focus();
                        return false;
                    }
                break;
                default:
                break;
            }
        }

        if( form.veh_category.value == "" ) {
            alert('You must select a vehicle Category.');
            form.veh_category.focus();
            return false;
        }

        // If we made it this far, we have no error, so we ...
        return true;
    }

    // Validating the recall search form.
    function validate_recall_form(form) {

        if(form.recall_year.value == '') {
            alert('You must select a \'Model Year\'.');
            form.recall_year.focus();
            return false;
        }

        if(form.recall_brand.value == '') {
            alert('You must select a \'Make\'.');
            form.recall_brand.focus();
            return false;
        }

        return true;

    }

    // Validating the gas price finder form.
    function validate_gas_price_form(form) {

        if (
            (form.zip.value == "") ||
            (!IsNum(form.zip.value)) ||
            (form.zip.value.length != 5)
        ) {
            alert( "Please enter a valid Zip Code." );
            form.zip.focus();
            return false;
        }

        return true;
    }

    // Validating the Lease Compare Basic Form
    function validate_lease_compare_basic_form(form) {

        // Validating First Name
        if(form.first_name.value == "") {
            alert("Please fill in your First Name.");
            form.first_name.focus();
            return false;
        }

        // Validating Last name
        if(form.last_name.value == "") {
            alert("Please fill in your Last Name.");
            form.last_name.focus();
            return false;
        }

        // Validating Email Address
        if (form.email.value == "")  {
            alert( "Please enter your Email Address." );
            form.email.focus();
            return false;
        }

        if (!IsEmail(form.email.value)) {
            alert(form.email.value + ' is not a valid Email Address');
            form.email.focus();
            return false;
        }

        // Validating Steet Address
        if(form.address.value == "") {
            alert("Please fill in your Street Address.");
            form.address.focus();
            return false;
        }

        // Validating City
        if(form.city.value == "") {
            alert("Please fill in your City.");
            form.city.focus();
            return false;
        }

        // Validating State
        if(form.state.value == "") {
            alert("Please select a State.");
            form.state.focus();
            return false;
        }

        // Validating Zip Code
        if (
            (form.zip.value == "") ||
            (!IsNum(form.zip.value)) ||
            (form.zip.value.length != 5)
        ) {
            alert( "Please enter a valid Zip Code." );
            form.zip.focus();
            return false;
        }

        // Validating the Day Phone
        if (
                (
                    (form.dayphone_1.value == "") ||
                    (form.dayphone_2.value == "") ||
                    (form.dayphone_3.value == "")
                ) || (
                    (form.dayphone_1.value.length != 3) ||
                    (form.dayphone_2.value.length != 3) ||
                    (form.dayphone_3.value.length != 4)
                ) || (
                    (!IsNum(form.dayphone_1.value)) ||
                    (!IsNum(form.dayphone_2.value)) ||
                    (!IsNum(form.dayphone_3.value))
                )

        ) {
            alert( "Please enter a valid Day Time Phone." );
            form.dayphone_1.focus();
            return false;
        }

        // Validating the Night Phone
        if (
                (
                    (form.nightphone_1.value == "") ||
                    (form.nightphone_2.value == "") ||
                    (form.nightphone_3.value == "")
                ) || (
                    (form.nightphone_1.value.length != 3) ||
                    (form.nightphone_2.value.length != 3) ||
                    (form.nightphone_3.value.length != 4)
                ) || (
                    (!IsNum(form.nightphone_1.value)) ||
                    (!IsNum(form.nightphone_2.value)) ||
                    (!IsNum(form.nightphone_3.value))
                )

        ) {
            alert( "Please enter a valid Night Time Phone." );
            form.nightphone_1.focus();
            return false;
        }

        if(form.payment.value == "") {
            alert("You must select a monthly payment.");
            form.payment.focus();
            return false;
        }

        if(form.miles_per_year.value == "") {
            alert("You must select a value for Miles Per Year.");
            form.miles_per_year.focus();
            return false;
        }

        // Disabling the submit button so the consumer doesn't keep clicking it if they are on a laggy connection
        form.lease_compare_submit.value='Proccessing ..... ';
        form.lease_compare_submit.disabled=true

        // return 'true' back to the form
        return true;

    }

    function validateLeaseCompareBlankForm(form) {

        // Validating Vehicle Type
        if(form.vehicle_type.value.length < 1) {
            alert('You must select a Vehicle Type.');
            form.vehicle_type.focus();
            return false;
        }

        // Validating Lease Term
        if(form.term.value < 24) {
            alert('You must select a Lease Term.');
            form.term.focus();
            return false;
        }

        // Validating Low and High Payment
        if(
            (form.payment_low.value > 0) &&
            (form.payment_high.value > 0)
        ) {
            var diff = form.payment_high.value - form.payment_low.value;
            if(
                (form.payment_high.value <= form.payment_low.value) ||
                (diff < 100)
            ) {
                alert('You must entner a \'Highest Payment\' that exceeds the \'Lowest Payment\' by at least $100.');
                form.payment_low.focus();
                return false;
            }
        }

        // Validating Miles Per Year
        if(form.miles_per_year.value.length < 1) {
            alert('You must select a \'Miles Per Year\'.');
            form.miles_per_year.focus();
            return false;
        }

        // Validating Down Payment
        if(form.down_payment.value == '') {
            alert('You must select a \'Down Payment\'.');
            form.down_payment.focus();
            return false;
        }

        // Made it this far, no errors, so ...

        return true;
    }
    
    function validateMiniLoanForm(form) {
    
    	if(form.employer.value == '') {
    		alert('Employer is required.');
    		form.employer.focus();
    		return false;
    	}
    	
    	// Validating the Day Phone
        if (
                (
                    (form.work_phone_1.value == "") ||
                    (form.work_phone_2.value == "") ||
                    (form.work_phone_3.value == "")
                ) || (
                    (form.work_phone_1.value.length != 3) ||
                    (form.work_phone_2.value.length != 3) ||
                    (form.work_phone_3.value.length != 4)
                ) || (
                    (!IsNum(form.work_phone_1.value)) ||
                    (!IsNum(form.work_phone_2.value)) ||
                    (!IsNum(form.work_phone_3.value))
                )

        ) {
            alert( "A valid Employer Phone is required." );
            form.work_phone_1.focus();
            return false;
        }
        
        if(form.job_title.value == '') {
    		alert('Occupation is required.');
    		form.job_title.focus();
    		return false;
    	}
    	
    	if(
            form.monthly_income.value < 1800
        ) {
            alert("You must state a Gross Monthly Income of at least 1800.");
            form.monthly_income.focus();
            return false;
        } else if(
            !IsNum(form.monthly_income.value)
        ) {
            alert("Please enter a valid Gross monthly Income.");
            form.income.focus();
            return false;
        }
        
        if(!validateSSN_from_multi_fields(form)) {
        	alert('A valid Social Security Number is required.');
        	form.ssn_1.focus();
        	return false;
        }

		return true;
    
    }

//-->
