function CheckIt(theForm)
{  
	var ph='FALSE';
	var rm='FALSE';
	var em='FALSE';
	var selectBox = getLayer('Method');
	var user_input = selectBox.options[selectBox.selectedIndex].value;
	if(user_input=="Phone")ph='TRUE';
	if(user_input=="R_Mail")rm='TRUE';
	if(user_input=="E_Mail")em='TRUE';
//	alert("DEBUG - user_input: "+user_input+"    PH, rm, and em: "+ ph+" " + rm+" " + em);
  if (theForm.YourFirstName.value == "")
  {
    alert("Please enter your \"First Name\".");
    theForm.YourFirstName.focus();
    return (false);
  }
    if (theForm.YourLastName.value == "")
  {
    alert("Please enter your \"Last Name\".");
    theForm.YourLastName.focus();
    return (false);
  }
  if (theForm.YourEMail.value == "")
  {
    alert("Please enter your \"eMail\" address.");
    theForm.YourEMail.focus();
    return (false);
  }
var emailFilter=/^.+@.+\..{2,3}$/;
  if (!(emailFilter.test(theForm.YourEMail.value))) { 
       alert("Please enter a valid formed \"eMail\" address.");
       theForm.YourEMail.focus();
       return (false);
    }
var illegalChars= /[\(\)\<\>\,\;\:\\\/\"\[\]]/
  if (theForm.YourEMail.value.match(illegalChars)) {
       alert("Please use valid characters \"eMail\" address.");
       theForm.YourEMail.focus();
       return (false);
    }
 if(rm=='TRUE')
 {
 	if (theForm.Street.value == "")
  	{
   	 	alert("You have selected to be reached by regular mail. Please enter your \"Full Street Address\".");
   		 theForm.Street.focus();
    	return (false);
 	 }
 	if (theForm.City.value == "")
  	{
    	alert("You have selected to be reached by regular mail. Please enter your \"City Name\".");
    	theForm.City.focus();
   		 return (false);
  	}
 	if (theForm.State.value.length<2)
  	{
    	alert("You have selected to be reached by regular mail. Please enter your \"2-letter state code\".");
    	theForm.State.focus();
    	return (false);
 	 }
 	if (theForm.Zip_Code.value == "")
 	{
    	alert("You have selected to be reached by regular mail. Please enter your \"Zip Code\".");
    	theForm.Zip_Code.focus();
    	return (false);
  	}
  	if (!validateZIP(theForm.Zip_Code.value))
  	{
    	theForm.Zip_Code.focus();
    	return (false);
  	}
	else
	{
	if(theForm.Street.value.length==0)theForm.Street.value="NA";
	if(theForm.Street.value.length==0)theForm.City.value="NA";
	if(theForm.Street.value.length==0)theForm.State.value="NA";
	if(theForm.Street.value.length==0)theForm.Apt.value="NA";
	if(theForm.Street.value.length==0)theForm.Zip_Code.value="NA";
	}
  }
 if(ph=='TRUE')
  {
	var phoneField=theForm.YourNumber;
//Validate phone number for 10 digit US numbers.
//phoneField - The HTML input field containing the phone number to validate.
//format - Integer value that defines how to format the text field.
	var num = phoneField.value.replace(/[^\d]/g,'');
	var format=0;
	if(num.length != 10)
	 {
		//Alert the user that the phone number entered was invalid.
    	alert("You have selected to be reached by phone. Please enter your full \"Phone Number\".");
    	phoneField.focus();
    	return (false);                   
	} 
	else 
	{
		//phone number was valid.  If format type is set, format the Phone to the desired style.
	   switch(format) 
		{
			case '0': //Format (xxx)-xxx-xxxx
				phoneField.value = "(" + num.substring(0,3) + ")-" + num.substring(3, 6) + "-" + num.substring(6);
				break;
			case '1': //Format xxx-xxx-xxxx
				phoneField.value = num.substring(0,3) + "-" + num.substring(3, 6) + "-" + num.substring(6);
				break;
			default: //Format xxxxxxxxxx
				phoneField.value = num;
				break;
		}
	}

	if (checkInternationalPhone(phoneField.value)==false)
	{
		alert("You have selected to be reached by phone. Please Enter a Valid Phone Number");
    	phoneField.focus();
    	return (false);
	}
  }
//
	var info1="";
	var info2="";
	var info3="";
	var info4="";
	var info5="";
	var info6="";
	var info7="";
	var info8="";
	var info9="";
	var info10="";
	var info11="";
//
if (theForm.MoreInfo1[0].checked == true)info1="Ribbons";
if (theForm.MoreInfo1[1].checked == true)info2="Trophies";
if (theForm.MoreInfo1[2].checked == true)info3="Plaques";
if (theForm.MoreInfo1[3].checked == true)info4="Metals";
if (theForm.MoreInfo1[4].checked == true)info5="Nameplates";
if (theForm.MoreInfo1[5].checked == true)info6="Badges";
if (theForm.MoreInfo1[6].checked == true)info7="Silk screening";
//
theForm.moreinfo10.value=info1+"  <BR>\n " +info2+" <BR>\n  " +info3+"  <BR>\n " +info4+"  <BR>\n " +info5+" <BR>\n  " +info6+" <BR>\n  " +info7+" <BR>\n  "+" <BR>\n  ";//
//alert("debug moreinfo: "info1+" " +info2+" " +info3+" " +info4+" " +info5+" " +info6+" " +info7;
 return (true);
}
//
//DHTML phone number validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
//
function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}
//
function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}
//
//Original:  Brian Swalwell
//This script and many more are available free online at -->
//The JavaScript Source!! http://javascript.internet.com -->
//
function validateZIP(field) {
var valid = "0123456789-";
var hyphencount = 0;

if (field.length!=5 && field.length!=10) {
alert("You have selected to be reached by regular mail. Please enter your 5 digit or 5 digit+4 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("You have selected to be reached by regular mail. Invalid characters in your zip code.  Please try again.");
return false;
}
if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-")) {
alert("You have selected to be reached by regular mail. The hyphen character should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
return false;
   }
}
return true;
}
