function checkFields(theForm)
        {
 				var regZip  = /(^\d{5}$)|(^\d{5}-\d{4}$)/;
				var regZipCanada = /(^([A-Za-z]\d[A-Za-z]\s\d[A-Za-z]\d)$)/;
                var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
                
                if (theForm.FirstName.value.length<1)
                {
                    alert("Please fill in First Name");
                    theForm.FirstName.focus();
                    return false;
                }
                if (theForm.LastName.value.length<1)
		{
		    alert("Please fill in Last Name");
		    theForm.LastName.focus();
		    return false;
                }
                if (theForm.School.value.length<1)
                {
					alert("Please fill in School/Organization");
					theForm.School.focus();
					return false;
                }
                if (theForm.Address1.value.length< 1)
				{
					alert("Please fill in Address");
					theForm.Address1.focus();
					return false;
				}
				if (theForm.City.value.length< 1)
				{
					alert("Please fill in City");
					theForm.City.focus();
					return false;
				}
				if (theForm.country1.checked && !regZip.test(theForm.Zip.value))
				{
					alert("Please fill in a valid Zip");
					theForm.Zip.focus();
					return false;
				}
				if (theForm.country2.checked && !regZipCanada.test(theForm.Zip.value))
				{
					alert("Please fill in a valid Zip");
					theForm.Zip.focus();
					return false;
				}
				if (theForm.country3.checked && theForm.countryname.selectedIndex < 1)
				{
					alert("Please select a country");
					theForm.countryname.focus();
					return false;
				}
				if ((theForm.state.selectedIndex < 1) && (theForm.region.value.length < 1))
				{
					alert("Please select a state or region");
					if (theForm.state.selectedIndex == 0)
					  theForm.state.focus();
					else
					  theForm.region.focus();
					return false;
				}
				if (theForm.Phone.value.length< 1)
				{
					alert("Please fill in phone");
					theForm.Phone.focus();
					return false;
				}
				if (!filter.test(theForm.EMail.value)) {
					alert("Please fill in a valid E-Mail address");
					theForm.EMail.focus();
					return false;
				}
				if (theForm.country3.checked)
				{
					theForm.country3.value = theForm.countryname.options[theForm.countryname.selectedIndex].text;
				}
                return true;
        }