function _CF_onError(form_object, input_object, object_value, error_message)    {	alert(error_message);       	return false;	    }function _CF_hasValue(obj, obj_type)    {    if (obj_type == "TEXT" || obj_type == "PASSWORD")	{    	if (obj.value.length == 0)       		return false;    	else       		return true;    	}    else if (obj_type == "SELECT")	{        for (i=0; i < obj.length; i++)	    	{		if (obj.options[i].selected)			return true;		}       	return false;		}    else if (obj_type == "SINGLE_VALUE_RADIO" || obj_type == "SINGLE_VALUE_CHECKBOX")	{		if (obj.checked)			return true;		else       		return false;		}    else if (obj_type == "RADIO" || obj_type == "CHECKBOX")	{        for (i=0; i < obj.length; i++)	    	{		if (obj[i].checked)			return true;		}       	return false;		}	}function _CF_checkdate(object_value)    {    //Returns true if value is a date format or is NULL    //otherwise returns false	    if (object_value.length == 0 || object_value.value=='mm/dd/yyyy')        return true;    //Returns true if value is a date in the mm/dd/yyyy format	isplit = object_value.indexOf('/');	if (isplit == -1 || isplit == object_value.length)		return false;    sMonth = object_value.substring(0, isplit);	if (sMonth.length == 0)        return false;	isplit = object_value.indexOf('/', isplit + 1);	if (isplit == -1 || (isplit + 1 ) == object_value.length)		return false;    sDay = object_value.substring((sMonth.length + 1), isplit);	if (sDay.length == 0)        return false;	sYear = object_value.substring(isplit + 1);	if (!_CF_checkinteger(sMonth)) //check month		return false;	else	if (!_CF_checkrange(sMonth, 1, 12)) //check month		return false;	else	if (!_CF_checkinteger(sYear)) //check year		return false;	else	if (!_CF_checkrange(sYear, 0, 9999)) //check year		return false;	else	if (!_CF_checkinteger(sDay)) //check day		return false;	else	if (!_CF_checkday(sYear, sMonth, sDay)) // check day		return false;	else		return true;    }function _CF_checkday(checkYear, checkMonth, checkDay)    {	maxDay = 31;	if (checkMonth == 4 || checkMonth == 6 ||			checkMonth == 9 || checkMonth == 11)		maxDay = 30;	else	if (checkMonth == 2)	{		if (checkYear % 4 > 0)			maxDay =28;		else		if (checkYear % 100 == 0 && checkYear % 400 > 0)			maxDay = 28;		else			maxDay = 29;	}	return _CF_checkrange(checkDay, 1, maxDay); //check day    }function _CF_checkinteger(object_value)    {    //Returns true if value is a number or is NULL    //otherwise returns false	    if (object_value.length == 0)        return true;    //Returns true if value is an integer defined as    //   having an optional leading + or -.    //   otherwise containing only the characters 0-9.	var decimal_format = ".";	var check_char;    //The first character can be + -  blank or a digit.	check_char = object_value.indexOf(decimal_format)    //Was it a decimal?    if (check_char < 1)	return _CF_checknumber(object_value);    else	return false;    }function _CF_numberrange(object_value, min_value, max_value)    {    // check minimum    if (min_value != null)	{        if (object_value < min_value)		return false;	}    // check maximum    if (max_value != null)	{	if (object_value > max_value)		return false;	}	    //All tests passed, so...    return true;    }function _CF_checknumber(object_value)    {    //Returns true if value is a number or is NULL    //otherwise returns false	    if (object_value.length == 0)        return true;    //Returns true if value is a number defined as    //   having an optional leading + or -.    //   having at most 1 decimal point.    //   otherwise containing only the characters 0-9.	var start_format = " .+-0123456789";	var number_format = " .0123456789";	var check_char;	var decimal = false;	var trailing_blank = false;	var digits = false;    //The first character can be + - .  blank or a digit.	check_char = start_format.indexOf(object_value.charAt(0))    //Was it a decimal?	if (check_char == 1)	    decimal = true;	else if (check_char < 1)		return false;        	//Remaining characters can be only . or a digit, but only one decimal.	for (var i = 1; i < object_value.length; i++)	{		check_char = number_format.indexOf(object_value.charAt(i))		if (check_char < 0)			return false;		else if (check_char == 1)		{			if (decimal)		// Second decimal.				return false;			else				decimal = true;		}		else if (check_char == 0)		{			if (decimal || digits)					trailing_blank = true;        // ignore leading blanks		}	        else if (trailing_blank)			return false;		else			digits = true;	}	    //All tests passed, so...    return true    }function _CF_checkrange(object_value, min_value, max_value)    {    //if value is in range then return true else return false    if (object_value.length == 0)        return true;    if (!_CF_checknumber(object_value))	{	return false;	}    else	{	return (_CF_numberrange((eval(object_value)), min_value, max_value));	}	    //All tests passed, so...    return true;    }function  _CF_checkCFForm_1(_CF_this)    {    if  (!_CF_hasValue(_CF_this.new_date, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.new_date, _CF_this.new_date.value, "Is your date correct? Please double-check your Date of Purchase."))            {            return false;             }        }    if  (!_CF_checkdate(_CF_this.new_date.value))        {        if  (!_CF_onError(_CF_this, _CF_this.new_date, _CF_this.new_date.value, "Is your date correct? Please double-check your Date of Purchase."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.dealer_name, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.dealer_name, _CF_this.dealer_name.value, "Please enter the Dealer Name."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.dealer_city, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.dealer_city, _CF_this.dealer_city.value, "Please enter the Dealer City."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.buyers_fname, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.buyers_fname, _CF_this.buyers_fname.value, "Please enter the Buyers First Name."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.buyers_lname, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.buyers_lname, _CF_this.buyers_lname.value, "Please enter the Buyers Last Name."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.buyers_address, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.buyers_address, _CF_this.buyers_address.value, "Please enter your Address."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.buyers_city, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.buyers_city, _CF_this.buyers_city.value, "Please enter your City."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.buyers_zip, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.buyers_zip, _CF_this.buyers_zip.value, "Please enter your Zip Code."))            {            return false;             }        }    if  (!_CF_hasValue(_CF_this.buyers_email, "TEXT" ))         {        if  (!_CF_onError(_CF_this, _CF_this.buyers_email, _CF_this.buyers_email.value, "Please enter your Email."))            {            return false;             }        }    return true;    }
