function Validate(theForm) {
   if (Trim(theForm.FirstName.value) == "")
  {
    alert("Please enter your first name.");
    theForm.FirstName.focus();
    return (false);
  }
   if (Trim(theForm.LastName.value) == "")
  {
    alert("Please enter your last name.");
    theForm.LastName.focus();
    return (false);
  }
   if (Trim(theForm.Address1.value) == "")
  {
    alert("Please enter your address.");
    theForm.Address1.focus();
    return (false);
  }
   if (Trim(theForm.City.value) == "")
  {
    alert("Please enter your city.");
    theForm.City.focus();
    return (false);
  }
   if (Trim(theForm.State.value) == "")
  {
    alert("Please enter your state.");
    theForm.State.focus();
    return (false);
  }
  if (Trim(theForm.Zip.value) == "")
  {
    alert("Please enter your zip code.");
    theForm.Zip.focus();
    return (false);
  }
  if (Trim(theForm.Phone.value) == "")
  {
    alert("Please enter your phone number.");
    theForm.Phone.focus();
    return (false);
  }
   if (Trim(theForm.Email.value) == "")
  {
    alert("Please enter your email address.");
    theForm.Email.focus();
    return (false);
  }
	var checkStr = theForm.Email.value;
	var ch = checkStr.indexOf('@');

	if (ch==0 || ch==-1) {
		alert("Please enter a valid email address.");
		theForm.Email.focus();
		return (false);
	}
	var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzfSOZsozYÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþ0123456789-@.-_'";
	var checkStr = theForm.Email.value;
	var allValid = true;
	for (i = 0;  i < checkStr.length;  i++) {
		ch = checkStr.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
				if (j == checkOK.length) {
					allValid = false;
					break;
				}
	}
	if (!allValid) {
		alert("Please enter only letter, digit and \"@.-_'\" characters in the \"Email\" field.");
		theForm.Email.focus();
		return (false);
	}
	
		return (true);
}