//Written on 2-22-2005 by Joshua Hayes for client side form validation
//Last edited on 03-22-2005 by Joshua Hayes

//Names ( city names too )
function checkName( Name )
{
	var illegalChars = /[^a-zA-Z \-\.\']/;	//allows a-z,A-Z,[space], -
	if ( Name.length == 0 || illegalChars.test( Name ) )
	{
		return false;
	}
	return true;
}


//HNumbers
function checkHNumber( Name )
{
	var illegalChars = /[^a-zA-Z0-9 \-\.\']/;	//allows a-z,A-Z,[space], -,.,0-9
	if ( Name.length == 0 || illegalChars.test( Name ) )
	{
		return false;
	}
	return true;
}


// Street addresses
function checkAddress ( strng )
{
	var illegalChars = /[^\w\s \- \.\#]/;	//allows letters, numbers, _, [space], -, .
	if( strng.length == 0 || illegalChars.test( strng ) )
	{
		return false;
	}
	return true;
}


// International street addresses
function checkIntAddress ( strng )
{
	// allows letters, numbers, _, [space], [hyphen], [period], [comma], [slash]
	var illegalChars = /[^\w\s\-\.\# ,\/]/;
	if( strng.length == 0 || illegalChars.test( strng ) )
	{
		return false;
	}
	return true;
}


// email addresses
function checkEmail ( email )
{
 	if ( email.length < 5 )
 	{
		return false;
	}
	var emailFilter=/^.+@.+\..{2,3}$/;
	if ( !( emailFilter.test( email ) ) )
	{
		return false;
	}
	//double check email for illegal characters
	var illegalChars= /[\( \ )\<\>\,\`\~\;\:\\\"\[\]]/
	if ( email.match( illegalChars ) )
	{
		return false;
	}
	return true;
}


// Area Code - checks for 3 digits
function checkPhoneArea ( area )
{
	if ( !( area.length == 3 || area.length == 4 ) )
	{
		return false;
	}
	var illegalChars = /[^0-9]/;	//allows 0-9
	if ( illegalChars.test( area ) )
	{
		return false;
	}
	return true;
}


// phone numbers - strip out delimiters and check for 4 or more digits
function checkPhone ( phone )
{
	if ( !( area.length == 3 ) )
	{
		return false;
	}
	var illegalChars = /[^0-9]/;	//allows 0-9
	if ( illegalChars.test( area ) )
	{
		return false;
	}
	return true;
}


//Zip Code
function checkZip( Zip )
{
	var illegalChars = /[^0-9 \-]/;	//allows 0-9, -
	if ( Zip.length == 0 || Zip.length > 10 || Zip.length < 5 || illegalChars.test( Zip ) )
	{
		return false;
	}
	return true;
}


// Social Security Number 1
function checkSSN1 ( ssn1 )
{
	if ( !( ssn1.length == 3 ) )
	{
		return false;
	}
	var illegalChars = /[^0-9]/;   //allows 0-9
	if ( illegalChars.test( ssn1 ) )
	{
		return false;
	}
	return true;
}


// Social Security Number 2
function checkSSN2 ( ssn2 )
{
	if ( !( ssn2.length == 2 ) )
	{
		return false;
	}
	var illegalChars = /[^0-9]/;   //allows 0-9
	if ( illegalChars.test( ssn2 ) )
	{
		return false;
	}
	return true;
}


// Social Security Number 3
function checkSSN3 ( ssn3 )
{
	if ( !( ssn3.length == 4 ) )
	{
		return false;
	}
	var illegalChars = /[^0-9]/;   //allows 0-9
	if ( illegalChars.test( ssn3 ) )
	{
		return false;
	}
	return true;
}

