function validate(x,pattern) {
return pattern.test(x);	
}

var PostalCodePattern = /^\D{1}\d{1}\D{1}\-?\d{1}\D{1}\d{1}$/;

var ZipPattern = /(^\d{5}$)|(^\d{5}-\d{4}$)/;

var PhonePattern = /^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/;

var EmailPattern = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

function check ( form ) {

	var minLength = 3;

	if (form.txtContact.value == "" || (form.txtContact.value).replace(/^\s*|\s*$/g,'') == "") {

		alert("Please enter a contact name.");

		form.txtContact.focus();

		return false;

	}

	if (form.txtCompany.value == "" || (form.txtCompany.value).replace(/^\s*|\s*$/g,'') == "") {

		alert("Please enter your company name.");

		form.txtCompany.focus();

		return false;

	}

	if (form.txtAddress.value == "" || (form.txtAddress.value).replace(/^\s*|\s*$/g,'') == "") {

		alert("Please enter your address");

		form.txtAddress.focus();

		return false;

	}

	if (form.txtCity.value == "" || (form.txtCity.value).replace(/^\s*|\s*$/g,'') == "") {

		alert("Please enter you city.");

		form.txtCity.focus();

		return false;

	}

	if (form.txtCountry.value == 0) {

		alert("Please select your country.");

		form.txtCountry.focus();

		return false;

	}

	if (form.txtState.value == "None") {

		alert("Please select your state/province.");

		form.txtState.focus();

		return false;

	}

	if ((!validate (form.txtZip.value,ZipPattern) && form.txtCountry.value==3) || (!validate (form.txtZip.value,PostalCodePattern) && form.txtCountry.value==2) ) {

		alert("Please enter a valid zip/postal code.");

		form.txtZip.focus();

		return false;

	}

	if (!validate(form.txtTel.value,PhonePattern)) {

		alert("Please enter a valid telephone number. eg. 123-456-7890");

		form.txtTel.focus();

		return false;

	}
	
	if (!validate(form.txtEmail.value,EmailPattern)) {

			alert("Please enter a complete email address in the form: yourname@yourdomain.com");

			form.txtEmail.focus();

			return (false);
		
	}


	if (form.txtSiteName.value == "" || (form.txtSiteName.value).replace(/^\s*|\s*$/g,'') == "") {

		alert("Please enter your Site Username.");

		form.txtSiteName.focus();

		return false;

	}

	if (form.txtPass.value.length < minLength) {

		alert ("Your password must be at least "+minLength+" characters.");

		form.txtPass.focus();

		return false;

	}

	if (form.txtPass.value == "") {

		alert("Please enter a password.");

		form.txtPass.focus();

		return false;

	}

	if (form.txtCpass.value == "") {

		alert("Please re-type your password.");

		form.txtCpass.focus();

		return false;

	}

	if (form.txtPass.value != form.txtCpass.value) {

		alert("Please re-enter your passwords they didn't match.");

		return false;

	}

	return true;
}

function isEmailAddr(email) {

	var result = false

	var theStr = new String(email)

	var index = theStr.indexOf("@");

	if (index > 0) {

		var pindex = theStr.indexOf(".",index);

		if ((pindex > index+1) && (theStr.length > pindex+1))

		result = true;

	}

	return result;

}






