//
// Copyright (c) 2000-2001 by experITy
//       All Rights Reserved
//

function Phone_onChange(field)
{
 var strInput = field.value;
 
 if(strInput.length > 0) 
 {
 
  
	if(!Phone_Validate(strInput))
    {
		HandleClientError("Invalid Phone Number!", field);
        return false;
    }
 }
}

function Phone_Validate(strInput)
{
	if(strInput.length == 0)
		return true;

	if( strInput.indexOf("(") != 0 || 
		strInput.indexOf(")") != 4 || 
		strInput.indexOf("-") != 8 ||
		strInput.length < 13)
	{
		return false;
	}
	return true;
}

function Phone_Format(strInput)
{
	if(strInput.length == 0)
		return strInput;
	
	if(	strInput.indexOf("-", 0) > -1 && 
		strInput.indexOf("(") > -1 && 
		strInput.indexOf(")") > -1) // aleady formated
		return strInput;
	
	if(strInput.length < 11)
		return "(" + strInput.substring(0, 3) + ")" + strInput.substring(3, 6) + "-" + strInput.substring(6);
	else
		return "(" + strInput.substring(0, 3) + ")" + strInput.substring(3, 6) + "-" + strInput.substring(6, 10) + "x" + strInput.substring(10);
}

function Phone_onInput(inputChar, field)
{
	if(inputChar < 48 || inputChar > 57)
	{
		return false;
	}
		
	var strInput = field.value;	
	
	if (strInput.length ==1 && strInput !="(")
		field.value = "(" + strInput;
	if (strInput.length == 4)
		field.value += ")";
	if (strInput.length == 8)
		field.value += "-";	
}
