// JScript source code

function checkForm(form)
{
	var errorMessage = "";
	var validated = true;
	var userName = document.registrationForm.userIDTxt.value;
	var firstName = document.registrationForm.fNameTxt.value;
	var lastName = document.registrationForm.lNameTxt.value;
	var address = document.registrationForm.addressTxt.value;
	var city = document.registrationForm.cityTxt.value;
	var state = document.registrationForm.stateTxt.value;
	var zipcode = document.registrationForm.zipTxt.value;
	var phone = document.registrationForm.phoneTxt.value;
	var escrowOff = document.registrationForm.escrowOfficerTxt.value;
	var password = document.registrationForm.passTxt.value;
	var confirmPass = document.registrationForm.confirmPassTxt.value;
	var company = document.registrationForm.companyTxt.value;
	
	if ( !checkEmail(userName))
	{
		errorMessage = errorMessage + " Invalid UserID\n";
		validated = false;
	}
	if (firstName == "")
	{
		errorMessage = errorMessage + " First name is empty\n";
		validated = false;
	}
	if (lastName == "")
	{
		errorMessage = errorMessage + " Last name is empty\n";
		validated = false;
	}
	if (company == "")
	{
		errorMessage = errorMessage + " Company is empty\n";
		validated = false;
	}
	if (address == "")
	{
		errorMessage = errorMessage + " Address is empty\n";
		validated = false;
	}
	if (city == "")
	{
		errorMessage = errorMessage + " City is empty\n";
		validated = false;
	}
	if (state == "")
	{
		errorMessage = errorMessage + " State is empty\n";
		validated = false;
	}
	if (escrowOff == "")
	{
		errorMessage = errorMessage + " Escrow officer is empty\n";
		validated = false;
	}
	if ( (password != confirmPass) || (password == ""))
	{
		errorMessage = errorMessage + " Either password is empty or wasn't confirmed\n";
		validated = false;
	}
	if ( !checkZip(zipcode))
	{
		errorMessage = errorMessage + " Invalid Zipcode\n";
		validated = false;
	}
	if ( !checkTel(phone))
	{
		errorMessage = errorMessage + " Invalid Phone Number\n";
		validated = false;
	}

	//check to see if validated is false
	if (!validated)
	{
		alert(errorMessage);
		return false;
	}
	else
		return true;
	
}

function checkEmail(email)
{
	var testresults;
	var str=email;
	var filter=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/i;
	
	if (filter.test(str))
		testresults=true;
	else
	{
		//alert("Please input a valid email address.")
		testresults=false;
		return false;
	}
	
	if (testresults)
		return true;
}

function checkZip(zip)
{
	var field = zip;
	var valid = "0123456789-";
	var hyphencount = 0;

	if (field.length!=5 && field.length!=10)
	{
		//alert("Please enter a 5 digit zip code.");
		return false;
	}

	for (var i=0; i < field.length; i++) 
	{
		temp = "" + field.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1")
		{
			//alert("Zip code should use only numbers or hyphens.");
			return false;
		}
		if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-"))
		{
			//alert("The hyphen character should be used with a properly formatted 5 digit +4 zip code.  For example, '12345-6789'.");
			return false;
		}
	}
	return true;
}
function checkTel(phone)
{
	var telnoval = phone;

		if (telnoval.charAt(3) != "-" || telnoval.charAt(7) != "-" || telnoval.length != 12)
		{
			//alert("Please format the phone number as ###-###-####.");
			return false;
		}

	var validChars = "0123456789-";

		for (var i = 0; i < telnoval.length; i++)
		{
			if (validChars.indexOf(telnoval.charAt(i)) == -1)
			{
			//alert("Please only use numbers or the - sign where appropriate.");
			return false;
			}
		}
	return true;
}