var phoneHasErrors=false;
var call_us = "\nFeel free to contact one of our representatives at 1-800-452-2880.";
function checkPhoneCallback(data, fieldname)
{
	el = jQuery('#' + fieldname);
	if (data != 1) 
	{
		phoneHasErrors=false;
		el.css('border', '1px solid #d2d2d2');
	} else 
	{
		phoneHasErrors= true;
		el.css('border', '1px solid #ff0000');
		alert("You have entered an invalid phone number."+call_us);
		el.focus();
	}	
}


var lastPhone = "";
var lastPhone2 = "";

function checkPhone(element)
{
	num 	= element.value;
	name 	= element.id;

	var url = 'http://www.a1autotransport.com/quoteforms/util/checkPhoneJQ.php?phone='+escape(trim(num)) + '&' + 'fieldname=' + escape(name);
	xss_ajax(url);	
}

// Validate US #s with extension	
function validateDphone(element)
{
	num 	= element.value;
	name 	= element.id;
	if(num != lastPhone)
	{
		if (phoneIsValid(element))
		{ 
			element.value = phoneIsValid(element);
			element.style.backgroundColor= '#ffffff';
			element.style.border='1px solid rgb(210, 210, 210)';
			checkPhone(element);
		}
		else
		{
			failedValidates++;
			setFailedValidateMessage();
			element.style.border='1px solid rgb(255, 0, 0)';
			alert("You have entered an invalid US phone number!"+call_us);
		}	
	}
	lastPhone = num;
	
}

function phoneIsValid(phoneObjectToCheck) {
    var textToTest = phoneObjectToCheck.value;
    var pattern = /([1](-|\.|\|\s){0,1})?(-|\.|\(|\|\s){0,1}(\d{3})(-|\.|\)|\s){0,2}(\d{3})(-|\.|\s){0,2}(\d{4})((-|\.|\s){0,2}(x|ext|extension)((-|\.|\s){0,2})?(\d{0,12}))?/;
    var result  = textToTest.match(pattern);
    if(result != null){
		// Check for Ext #
		if (result[9]) {
			returnString = '('+result[4]+') '+result[6]+'-'+result[8]+result[9];
		} else {
			returnString = '('+result[4]+') '+result[6]+'-'+result[8];
		}
		
        return returnString;
    }
    return 0;
}                  
// Validate International #s with extension
function validateIphone(element)
{
	num2 	= element.value;
	name 	= element.id;
	if(num2 != lastPhone2)
	{
		if (intPhoneIsValid(element))
		{ 
			element.value = intPhoneIsValid(element);
			element.style.backgroundColor= '#ffffff';
			element.style.border='1px solid rgb(210, 210, 210)';
			
		}
		else
		{
			failedValidates++;
			setFailedValidateMessage();
			element.style.border='1px solid rgb(255, 0, 0)';
			alert("You have entered an invalid International phone number!"+call_us);
		}	
	}
	lastPhone2 = num2;
	
}

function intPhoneIsValid(phoneObjectToCheck2) {
    var textToTest2 = phoneObjectToCheck2.value;
    var pattern2 = /(\+)?((^A-za-z_|-|\.|\(|\)|\s|\d){10,20})+((-|\.|\s){0,2}(x|ext|extension)((-|\.|\s){0,2})?(\d{0,12}))?/;
    var result2  = textToTest2.match(pattern2);
    if(result2 != null){
		var returnString = result2[2];
		// Check for Ext #
		if (result2[4]) {
			returnString = result2[2] + ' ' + result2[4];
		}
		
        return returnString;
    }
    return 0;
}   
