// Trevor Hayes thayes@shopcity.com
function convertKeypadLetters(phone_number)
{
	return phone_number.replace(/[A-Ca-c]/g, '2')
		.replace(/[D-Fd-f]/g, '3')
		.replace(/[G-Ig-i]/g, '4')
		.replace(/[J-Lj-l]/g, '5')
		.replace(/[M-Om-o]/g, '6')
		.replace(/[P-Sp-s]/g, '7')
		.replace(/[T-Vt-v]/g, '8')
		.replace(/[W-Zw-z]/g, '9');
}

function toRawNumberFormat(str)
{
	var phone_number = str;
	phone_number = phone_number.replace(/ext\./g,'');
	phone_number = convertKeypadLetters(phone_number);
	
	phone_number = phone_number.replace(/\D/g,'');
	
	return phone_number;
}

function toPhoneNumberFormat(field)
{
	var phone_number = toRawNumberFormat(field.value);
	phone_number = phone_number.replace(/^1/g,'');
	
	if (phone_number.length <= 7)
	{
		phone_number = phone_number.replace(/^(\d{3})/,'$1-');
	}			
	else if (phone_number.length <= 10)
	{
		 phone_number = phone_number.replace(/^(\d{3})(\d{3})/,'$1-$2-');
	}
	else if ( phone_number.length > 10 &&  phone_number.length <= 16)
	{
		phone_number =  phone_number.replace(/^(\d{3})(\d{3})(\d{4})(\d*)/,'$1-$2-$3 ext. $4');
	}
	
	field.value =  phone_number;
}

function toTollFreePhoneNumberFormat(field)
{
	var phone_number = toRawNumberFormat(field.value);
	phone_number = phone_number.replace(/^1/g,'');
	
	if (phone_number.length <= 7)
	{
		phone_number = phone_number.replace(/^(\d{3})/,'$1-');
	}			
	else if (phone_number.length <= 10)
	{
		 phone_number = phone_number.replace(/^(\d{3})(\d{3})/,'1-$1-$2-');
	}
	else if ( phone_number.length > 10 &&  phone_number.length <= 16)
	{
		phone_number =  phone_number.replace(/^(\d{3})(\d{3})(\d{4})(\d*)/,'1-$1-$2-$3 ext. $4');
	}
	
	field.value =  phone_number;
}
