function Capital(Name)
{
	newNames = new Array
	re = /\s*[ ]\s*/
	nameList = Name.value.split(re)
	re = /^(\S)(\S*)$/
	for (i=0;i<nameList.length;i++)
		{	
			re.exec(nameList[i])
			newNames[i] = RegExp.$1.toUpperCase() + RegExp.$2.toLowerCase()
		}
	newNameField = newNames[0]
	for (i=1;i<newNames.length;i++)
		{
			newNameField += " " + newNames[i]
		}
	Name.value = newNameField
}

function CapitalST(Name)
{
	re = /^([A-Za-z]{2})$/
	re.exec(Name.value)
	newName = RegExp.$1.toUpperCase()
	Name.value = newName
}

function Confirm_Firstname()
{	Capital(document.Address_Correction.FirstName)
	re = /^[A-Z][A-Za-z .-]+$/
	if (!re.test(document.Address_Correction.FirstName.value))
	{	alert("Please enter a valid First Name.");
		dataOK="NO";
		document.Address_Correction.FirstName.focus();
		document.Address_Correction.FirstName.select()
	}
}

function Confirm_Lastname()
{	Capital(document.Address_Correction.LastName)
	re = /^[A-Z][A-Za-z .-]+$/
	if (!re.test(document.Address_Correction.LastName.value))
	{	alert("Please enter a valid Last Name.");
		dataOK="NO";
		document.Address_Correction.LastName.focus();
		document.Address_Correction.LastName.select()
	}
}

function Confirm_Address()
{	Capital(document.Address_Correction.Address)
	re = /^[A-Z0-9#][A-Za-z0-9#. -]+$/
	if (!re.test(document.Address_Correction.Address.value))
	{	alert("Please enter a valid Address. (Letters, Numbers, Spaces or #. Only.");
		dataOK="NO";
		document.Address_Correction.Address.focus();
		document.Address_Correction.Address.select()
	}
}

function Confirm_City()
{
	Capital(document.Address_Correction.City)
	re = /^[A-Z][A-Za-z -]+$/
	if (!re.test(document.Address_Correction.City.value))
	{	alert("Please enter a valid City.");
		dataOK="NO";
		document.Address_Correction.City.focus();
		document.Address_Correction.City.select()
	}
}

function Confirm_ST()
{
	CapitalST(document.Address_Correction.ST)
	re = /^[A-Z]{2}$/
	if (!re.test(document.Address_Correction.ST.value))
	{	alert("Please enter a valid State.");
		dataOK="NO";
		document.Address_Correction.ST.focus();
		document.Address_Correction.ST.select()
	}
}

function Confirm_ZipCode()
{
	re = /^\d{5}$/
	if (!re.test(document.Address_Correction.ZipCode.value))
	{	alert("Please enter a valid Zip Code.");
		dataOK="NO";
		document.Address_Correction.ZipCode.focus();
		document.Address_Correction.ZipCode.select()
	}
}

function Confirm_Phone()
{	re = /^\(?(\d{3})\)?[\.\-\/ ]?(\d{3})[\.\-\/ ]?(\d{4})$/
	validPhone = re.exec(document.Address_Correction.Phone.value)
	if (validPhone)
	{	document.Address_Correction.Phone.value = "(" + validPhone[1] + ") " + validPhone[2] + "-" + validPhone[3]
	}
	else
	{ 	alert("Please enter a valid Phone Number (###) ###-####.");
		dataOK="NO";
		document.Address_Correction.Phone.focus();
		document.Address_Correction.Phone.select()
	}
}

function Confirm_FAX()
{
	re = /^\(?(\d{3})\)?[\.\-\/ ]?(\d{3})[\.\-\/ ]?(\d{4})$/
	if (document.Address_Correction.FAX.value != "")
	{	validFAX = re.exec(document.Address_Correction.FAX.value)
		if (validFAX)
		{	document.Address_Correction.FAX.value = "(" + validFAX[1] + ") " + validFAX[2] + "-" + validFAX[3]
		}
		else
		{ 	alert("Please enter a valid FAX Number (###) ###-####.");
			dataOK="NO";
			document.Address_Correction.FAX.focus();
			document.Address_Correction.FAX.select()
		}
	}
}

function Confirm_Cell()
{
	re = /^\(?(\d{3})\)?[\.\-\/ ]?(\d{3})[\.\-\/ ]?(\d{4})$/
	if (document.Address_Correction.Cell.value != "")
	{	validCell = re.exec(document.Address_Correction.Cell.value)
		if (validCell)
		{	document.Address_Correction.Cell.value = "(" + validCell[1] + ") " + validCell[2] + "-" + validCell[3]
		}
		else
		{ 	alert("Please enter a valid Cell Number (###) ###-####.");
			dataOK="NO";
			document.Address_Correction.Cell.focus();
			document.Address_Correction.Cell.select()
		}
	}
}

function Confirm_EMail()
{	re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/
	document.Address_Correction.email.value = document.Address_Correction.email.value.toLowerCase()
	if (document.Address_Correction.email.value =="yourname@isp.com")		
		{ 	alert(document.Address_Correction.email.value + " is not a valid E-Mail Address."); 
			dataOK="NO";
			document.Address_Correction.email.focus()
			document.Address_Correction.email.select()
		}
	else
		{ if (!re.test(document.Address_Correction.email.value))
			{	alert("Please enter a valid E-Mail Address."); 				
				dataOK="NO";
				document.Address_Correction.email.focus()
				document.Address_Correction.email.select()
			}
		}
	if (document.Address_Correction.email.value.match("kyw.com") == "kyw.com")
		{	alert("Please enter a valid Personal E-Mail Address.  KYW addresses are not allowed."); 				
			dataOK="NO";
			document.Address_Correction.email.focus()
			document.Address_Correction.email.select()
		}
	if (document.Address_Correction.email.value.match("abc.com") == "abc.com")
		{	alert("Please enter a valid Personal E-Mail Address.  ABC addresses are not allowed."); 				
			dataOK="NO";
			document.Address_Correction.email.focus()
			document.Address_Correction.email.select()
		}
	if (document.Address_Correction.email.value.match("nbc.com") == "nbc.com")
		{	alert("Please enter a valid Personal E-Mail Address.  NBC addresses are not allowed."); 				
			dataOK="NO";
			document.Address_Correction.email.focus()
			document.Address_Correction.email.select()
		}
}

function Confirm_CardNumber()
{
	re = /^\d{5}$/
	if (!re.test(document.Address_Correction.CardNumber.value))
	{	alert("Please enter a valid IATSE Card Number.");
		dataOK="NO";
		document.Address_Correction.CardNumber.focus();
		document.Address_Correction.CardNumber.select()
	}
}

function Validate()
{	dataOK = "YES"
	Confirm_Firstname();
	if (dataOK == "YES")
		{	Confirm_Lastname() }
	if (dataOK == "YES")
		{	Confirm_Address() }
	if (dataOK == "YES")
		{	Confirm_City() }
	if (dataOK == "YES")
		{	Confirm_ST() }
	if (dataOK == "YES")
		{	Confirm_ZipCode() }
	if (dataOK == "YES")
		{	Confirm_Phone() }
	if (dataOK == "YES")
		{	Confirm_FAX() }
	if (dataOK == "YES")
		{	Confirm_Cell() }
	if (dataOK == "YES")
		{	Confirm_EMail() }
	if (dataOK == "YES")
		{	Confirm_CardNumber() }
	if (dataOK == "YES")
		{	alert("Please allow 24 - 48 hours to process.");  
			document.Address_Correction.submit() }
}