function formCheck(mode, description)
{ 
var enews = document.getElementById('enews_dnp')
var prod_showcase = document.getElementById('prod_showcase_dnp')
var whitepapers = document.getElementById('whitepapers_dnp')


	if(document.qualform.RECEIVE_YES_NO[0].checked == false && document.qualform.RECEIVE_YES_NO[1].checked == false)
	{
	alert("Please specify whether you wish to receive " + description +"?");
        document.qualform.RECEIVE_YES_NO[0].focus();
		return false;
	}

	if(document.qualform.RECEIVE_YES_NO[1].checked == true)
	// stop validation when "not to receive" response
	{
		return true;
	}
	
		
	if ((mode == "SHORT") || (mode == "ABBR"))
	{
		if (document.qualform.EMAIL_ADDRESS.value == "")
		{
			alert("Please specify your E-mail Address.");
       			document.qualform.EMAIL_ADDRESS.focus();
			return false;
		}
		if ((document.qualform.EMAIL_ADDRESS.value != "") && (!validEmail(document.qualform.EMAIL_ADDRESS.value)))
		      {
			alert("You have entered an invalid email address. Please re-enter it.");
			document.qualform.EMAIL_ADDRESS.focus();
			return false;
		}
	
			if (document.qualform.EMAIL_ADDRESS2.value == "") 
			{
				alert("Please confirm your email address.");
				document.qualform.EMAIL_ADDRESS2.focus();
				return false;
			}   
			if(document.qualform.EMAIL_ADDRESS.value.toUpperCase() != document.qualform.EMAIL_ADDRESS2.value.toUpperCase())
			{
				alert("Confirmation email address does not match email address.");
		        	document.qualform.EMAIL_ADDRESS.focus();
				return false;
			}
	 
		
        if(document.qualform.REQUESTED_VERSION[0].checked == false && document.qualform.REQUESTED_VERSION[1].checked == false)
		{
			alert("Please specify the requested version.");
	        	document.qualform.REQUESTED_VERSION[0].focus();
			return false;
		} 
		
		if (CheckedRadioValue(document.qualform.REQUESTED_VERSION)=="P")
		{
             if (document.qualform.GEOSTATE.value == "53")
			{
				alert("Free Print Edition subscriptions are only available for addresses in the US or Canada.");
        			document.qualform.REQUESTED_VERSION[0].focus();
				return false;
			}
		}
                if (!CheckDemos(document.qualform))
		{
			return false;
		}	
	
		return true;
	}

	if (mode == "ADD")
	{
		if(document.qualform.FNAME.value == "")
		{
			alert("Please specify your First name.");
        		document.qualform.FNAME.focus();
			return false;
		}
		if(document.qualform.LNAME.value == "")
		{
			alert("Please specify your Last name.");
        		document.qualform.LNAME.focus();
			return false;
		}
	}
	if (mode != "RENEW")
	{
		if(document.qualform.TITLE.value == "")
		{
			alert("Please specify your Title.");
	        document.qualform.TITLE.focus();
			return false;
		}
		if(document.qualform.COMPANY.value == "")
		{
			alert("Please specify your Company name.");
        		document.qualform.COMPANY.focus();
			return false;
		}
		if(document.qualform.ADDRESS2.value == "")
		{
			alert("Please specify your Street Address.");
	        	document.qualform.ADDRESS2.focus();
			return false;
		}
		if(document.qualform.CITY.value == "")
		{
			alert("Please specify your City.");
	        	document.qualform.CITY.focus();
			return false;
		}
		if (document.qualform.STATE.selectedIndex == 0)
		{
			alert("Please specify your State/Province.");
		        document.qualform.STATE.focus();
			return false;
		}

		// validate Canadian state/postal code combination
		if (!ValidCanPostal(document.qualform.STATE[document.qualform.STATE.selectedIndex].value,document.qualform.ZIPCODE.value))
		{
			alert ("Invalid Canadian province/postal code combination.");
        		document.qualform.STATE.focus();
			return false;
		}

		if (document.qualform.STATE[document.qualform.STATE.selectedIndex].value == "53")
		{
			if (document.qualform.COUNTRY.value == "")
			{
				alert("Please specify your Country.");
	        		document.qualform.COUNTRY.focus();
				return false;
			}

		}
		else
		{
			if (document.qualform.ZIPCODE.value.length < 5)
			{
				alert("Please specify your Zip/Postal Code.");
	        		document.qualform.ZIPCODE.focus();
				return false;
			}
		}
	}

	if (document.qualform.EMAIL_ADDRESS.value == "")
		{
			alert("Please specify your E-mail Address.");
       			document.qualform.EMAIL_ADDRESS.focus();
			return false;
		}
	if ((document.qualform.EMAIL_ADDRESS.value != "") && (!validEmail(document.qualform.EMAIL_ADDRESS.value)))
	      {
		alert("You have entered an invalid email address. Please re-enter it.");
		document.qualform.EMAIL_ADDRESS.focus();
		return false;
	}

		if (document.qualform.EMAIL_ADDRESS2.value == "") 
		{
			alert("Please confirm your email address.");
			document.qualform.EMAIL_ADDRESS2.focus();
			return false;
		}   
		if(document.qualform.EMAIL_ADDRESS.value.toUpperCase() != document.qualform.EMAIL_ADDRESS2.value.toUpperCase())
		{
			alert("Confirmation email address does not match email address.");
	        	document.qualform.EMAIL_ADDRESS.focus();
			return false;
		}
 
     	
	if(document.qualform.REQUESTED_VERSION[0].checked == false && document.qualform.REQUESTED_VERSION[1].checked == false)
			{
				alert("Please specify the requested version.");
		        	document.qualform.REQUESTED_VERSION[0].focus();
				return false;
			} 
        if (((mode == "ADD")|| (mode == "COA"))&&
	(document.qualform.STATE[document.qualform.STATE.selectedIndex].value == "53") &&
	(CheckedRadioValue(document.qualform.REQUESTED_VERSION) == "P"))
	{
		alert("Free Print Edition subscriptions are only available for addresses in the US or Canada.");
        	document.qualform.REQUESTED_VERSION[0].focus();
		return false;
	}
	if ((mode == "RENEW") && (CheckedRadioValue(document.qualform.REQUESTED_VERSION) == "P") &&
	(document.qualform.GEOSTATE.value == "53"))
	{
		alert("Free Print Edition subscriptions are only available for addresses in the US or Canada.");
        	document.qualform.REQUESTED_VERSION[0].focus();
		return false;
	}
     	
	if (!CheckDemos(document.qualform))
	{
		return false;
	}
	
 }  
function formCheckAlt(mode, description)
{ 
var enews = document.getElementById('enews_dnp')
var prod_showcase = document.getElementById('prod_showcase_dnp')
var whitepapers = document.getElementById('whitepapers_dnp')


	if(document.qualform.RECEIVE_YES_NO[0].checked == false && document.qualform.RECEIVE_YES_NO[1].checked == false)
	{
	alert("Please specify whether you wish to receive " + description +"?");
        document.qualform.RECEIVE_YES_NO[0].focus();
		return false;
	}
	if(document.qualform.RECEIVE_YES_NO[1].checked == true)
	// stop validation when "not to receive" response
	{
		return true;
	}


	if (mode == "ADD")
	{
		if(document.qualform.FNAME.value == "")
		{
			alert("Please specify your First name.");
        		document.qualform.FNAME.focus();
			return false;
		}
		if(document.qualform.LNAME.value == "")
		{
			alert("Please specify your Last name.");
        		document.qualform.LNAME.focus();
			return false;
		}
	}
	if (mode != "RENEW")
	{
		if(document.qualform.TITLE.value == "")
		{
			alert("Please specify your Title.");
	        document.qualform.TITLE.focus();
			return false;
		}
		if(document.qualform.COMPANY.value == "")
		{
			alert("Please specify your Company name.");
        		document.qualform.COMPANY.focus();
			return false;
		}
		if(document.qualform.ADDRESS2.value == "")
		{
			alert("Please specify your Street Address.");
	        	document.qualform.ADDRESS2.focus();
			return false;
		}
		if(document.qualform.CITY.value == "")
		{
			alert("Please specify your City.");
	        	document.qualform.CITY.focus();
			return false;
		}
		if (document.qualform.STATE.selectedIndex == 0)
		{
			alert("Please specify your State/Province.");
		        document.qualform.STATE.focus();
			return false;
		}

		// validate Canadian state/postal code combination
		if (!ValidCanPostal(document.qualform.STATE[document.qualform.STATE.selectedIndex].value,document.qualform.ZIPCODE.value))
		{
			alert ("Invalid Canadian province/postal code combination.");
        		document.qualform.STATE.focus();
			return false;
		}

		if (document.qualform.STATE[document.qualform.STATE.selectedIndex].value == "53")
		{
			if (document.qualform.COUNTRY.value == "")
			{
				alert("Please specify your Country.");
	        		document.qualform.COUNTRY.focus();
				return false;
			}
		
		}
		else
		{
			if (document.qualform.ZIPCODE.value.length < 5)
			{
				alert("Please specify your Zip Code.");
	        		document.qualform.ZIPCODE.focus();
				return false;
			}
		}


		if ((document.qualform.HOME_ADDRESS1.value != "")
			|| (document.qualform.HOME_ADDRESS2.value != "")
			|| (document.qualform.HOME_CITY.value != "")
			|| (document.qualform.HOME_ZIPCODE.value != "")
			|| (document.qualform.HOME_STATE.selectedIndex > 0))
		{
			if(document.qualform.HOME_ADDRESS2.value == "")
			{
				alert("Please specify your optional delivery Street Address.");
	        		document.qualform.HOME_ADDRESS2.focus();
				return false;
			}
			if(document.qualform.HOME_CITY.value == "")
			{
				alert("Please specify your optional delivery City.");
	        		document.qualform.HOME_CITY.focus();
				return false;
			}
			if (document.qualform.HOME_STATE.selectedIndex == 0)
			{
				alert("Please specify your optional delivery State/Province.");
		        	document.qualform.HOME_STATE.focus();
				return false;
			}

			// validate Canadian state/postal code combination
			if (!ValidCanPostal(document.qualform.HOME_STATE[document.qualform.HOME_STATE.selectedIndex].value,document.qualform.HOME_ZIPCODE.value))
			{
				alert ("Invalid optional delivery Canadian province/postal code combination.");
        			document.qualform.HOME_STATE.focus();
				return false;
			}

			if (document.qualform.HOME_STATE[document.qualform.HOME_STATE.selectedIndex].value == "53")
			{
				if (document.qualform.HOME_COUNTRY.value == "")
				{
					alert("Please specify your optional delivery Country.");
	        			document.qualform.HOME_COUNTRY.focus();
					return false;
				}
			
			
		        }
			else
			{
				if (document.qualform.HOME_ZIPCODE.value.length < 5)
				{
					alert("Please specify your optional delivery Zip Code.");
	        			document.qualform.HOME_ZIPCODE.focus();
					return false;
				}
			}
		}
                
	if (document.qualform.EMAIL_ADDRESS.value == "")
		{
			alert("Please specify your E-mail Address.");
       			document.qualform.EMAIL_ADDRESS.focus();
			return false;
		}
	if ((document.qualform.EMAIL_ADDRESS.value != "") && (!validEmail(document.qualform.EMAIL_ADDRESS.value)))
	      {
		alert("You have entered an invalid email address. Please re-enter it.");
		document.qualform.EMAIL_ADDRESS.focus();
		return false;
	}

		if (document.qualform.EMAIL_ADDRESS2.value == "") 
		{
			alert("Please confirm your email address.");
			document.qualform.EMAIL_ADDRESS2.focus();
			return false;
		}   
		if(document.qualform.EMAIL_ADDRESS.value.toUpperCase() != document.qualform.EMAIL_ADDRESS2.value.toUpperCase())
		{
			alert("Confirmation email address does not match email address.");
	        	document.qualform.EMAIL_ADDRESS.focus();
			return false;
		}


    if(document.qualform.REQUESTED_VERSION[0].checked == false && document.qualform.REQUESTED_VERSION[1].checked == false)
	{
		alert("Please specify the requested version.");
      	document.qualform.REQUESTED_VERSION[0].focus();
		return false;
	} 
        if (((mode == "ADD")|| (mode == "COA"))&&
	(document.qualform.STATE[document.qualform.STATE.selectedIndex].value == "53") &&
	(CheckedRadioValue(document.qualform.REQUESTED_VERSION) == "P"))
	{
		alert("Free Print Edition subscriptions are only available for addresses in the US or Canada.");
        	document.qualform.REQUESTED_VERSION[0].focus();
		return false;
	}
	if ((mode == "RENEW") && (CheckedRadioValue(document.qualform.REQUESTED_VERSION) == "P") &&
	(document.qualform.GEOSTATE.value == "53"))
	{
		alert("Free Print Edition subscriptions are only available for addresses in the US or Canada.");
        	document.qualform.REQUESTED_VERSION[0].focus();
		return false;
	}
     	
		if (!CheckDemos(document.qualform))
		{
			return false;
		}
    	}
 } 

function PaidformCheck(mode)
{ 
	if(!CheckUnselects(document.paidform.SUBSCRIPTION))	
	{
		alert("Please select your subscription.");
    	   	document.paidform.SUBSCRIPTION[0].focus();
		return false;
	}
	if (mode == "ADD")
  	{
		if(document.paidform.FNAME.value == "")
		{
			alert("Please specify your First name.");
	       		document.paidform.FNAME.focus();
			return false;
		}
		if(document.paidform.LNAME.value == "")
		{
			alert("Please specify your Last name.");
       			document.paidform.LNAME.focus();
			return false;
		}
	}

	if (mode != "RENEW") 
  	{
		if (!CheckBusAddress())
		{
			return false;
		}				
	}
	if (document.paidform.PHONE.value == "")
	{
		alert("Please specify your phone number.");
		document.paidform.PHONE.focus();
		return false;
	} 
	
	if (document.paidform.EMAIL_ADDRESS.value == "") 
	{
		alert("Please specify your email address.");
		document.paidform.EMAIL_ADDRESS.focus();
		return false;
	}
	
	if ((document.paidform.EMAIL_ADDRESS.value != "") && (!validEmail(document.paidform.EMAIL_ADDRESS.value)))
	{
		alert("You have entered an invalid email address. Please re-enter it.");
		document.paidform.EMAIL_ADDRESS.focus();
		return false;
	}
	

	
	
		if (!CheckPaymentInfo())
		{
		//alert(CheckPaymentInfo())
		return false;
		}
	    
	
	
	
	return true;
}
function CheckBusAddress()
{
	if(document.paidform.TITLE.value == "")
		{
			alert("Please specify your Title.");
	        	document.paidform.TITLE.focus();
			return false;
		}
		if(document.paidform.COMPANY.value == "")
		{
			alert("Please specify your Company name.");
        		document.paidform.COMPANY.focus();
			return false;
		}
	if(document.paidform.ADDRESS2.value == "")
	{
		alert("Please specify your Street Address.");
	        document.paidform.ADDRESS2.focus();
		return false;
	}
	if(document.paidform.CITY.value == "")
	{
		alert("Please specify your City.");
	        document.paidform.CITY.focus();
		return false;
	}
       if (document.paidform.STATE.selectedIndex == 0)
		{
			alert("Please specify your State/Province or select 'I am not in the U.S. or Canada'.");
		        document.paidform.STATE.focus();
			return false;
		}
	// validate Canadian state/postal code combination
		if (!ValidCanPostal(document.paidform.STATE[document.paidform.STATE.selectedIndex].value,document.paidform.ZIPCODE.value))
		{
			alert ("Invalid Canadian province/postal code combination.");
        		document.paidform.STATE.focus();
			return false;
		}
                if (document.paidform.STATE[document.paidform.STATE.selectedIndex].value == "53")
		{
			if (document.paidform.COUNTRY.value == "")
			{
				alert("Please specify your Country.");
	        		document.paidform.COUNTRY.focus();
				return false;
			}
		}
		else
		{
		if (document.paidform.ZIPCODE.value.length < 5)
		{
			alert("Please specify your Zip/Postal Code.");
	        	document.paidform.ZIPCODE.focus();
			return false;
		}
	}
	return true;
}
function CheckPaymentInfo()
{
	
	if(!CheckDropdown(document.paidform.CARD_TYPE))
	{
		alert("Please specify credit card.");
        	document.paidform.CARD_TYPE.focus();
		return false;
	}

	if(document.paidform.CARD_NUMBER.value == "")
	{
		alert("Please specify credit card number.");
        	document.paidform.CARD_NUMBER.focus();
		return false;
	}

	// Visa
	if(document.paidform.CARD_TYPE.selectedIndex == 1)
	{
		if (!isVisa(stripWhitespace(document.paidform.CARD_NUMBER.value)))
		{
			alert("Invalid credit card number. Please re-enter.")
        		document.paidform.CARD_NUMBER.focus();
			return false;
		}
	}

	// MasterCard
	if(document.paidform.CARD_TYPE.selectedIndex == 2)
	{
		if (!isMasterCard(stripWhitespace(document.paidform.CARD_NUMBER.value)))
		{
			alert("Invalid credid card number. Please re-enter.")
        		document.paidform.CARD_NUMBER.focus();
			return false;
		}
	}
	
	// AmEx
	if(document.paidform.CARD_TYPE.selectedIndex == 3)
	{
		if (!isAmericanExpress(stripWhitespace(document.paidform.CARD_NUMBER.value)))
		{
			alert("Invalid credid card number. Please re-enter.")
        		document.paidform.CARD_NUMBER.focus();
			return false;
		}
	}
	
	// Discover
	if(document.paidform.CARD_TYPE.selectedIndex == 4)
	{
		if (!isDiscover(stripWhitespace(document.paidform.CARD_NUMBER.value)))
		{
			alert("Invalid credid card number. Please re-enter.")
        		document.paidform.CARD_NUMBER.focus();
			return false;
		}
	}

	if(!CheckDropdown(document.paidform.ExpMon))
	{
 		alert('Please select the expiration month.');
		document.paidform.ExpMon.focus();
 		return false;
	}

	if(!CheckDropdown(document.paidform.ExpYear))
	{
 		alert('Please select the expiration year.');
		document.paidform.ExpYear.focus();
 		return false;
	}
var d, month, year;
   	d = new Date();
    
	month = d.getMonth() + 1;
	year = d.getFullYear() - 2000;
	if (document.forms[0].ExpYear[document.forms[0].ExpYear.selectedIndex].value < year)
	{
 		alert('Invalid Expiration date.');
		document.forms[0].ExpYear.focus();
 		return false;
	}
	else
	{
		if (document.forms[0].ExpYear[document.forms[0].ExpYear.selectedIndex].value == year)
		{
			if (document.forms[0].ExpMon[document.forms[0].ExpMon.selectedIndex].value < month)
			{
 				alert('Invalid Expiration date.');
				document.forms[0].ExpMon.focus();
 				return false;
			}
		}
	}
	if(document.paidform.SCODE.value == "")
	{
		alert('Please enter security code.');
		document.paidform.SCODE.focus();
		return false;
	}
	
	return true;
}
 
// declare global variables
var i;

// two arrays for Canadian province/postal code validation
var CanCodes=new Array("54","55","56","57","58","59","60","66","61","62","63","64","65");
var CanLetters=new Array("T","UV","R","E","A","B","X","X","KLMNP","C","GHJ","S","Y");

// check if first letter of postal code matches selected Canadian province
// StateCD is 2-digit code that Omeda uses to identify Canadian provinces (value of STATE field)
// PostCD is entered postal code (value of ZIPCODE field)
function ValidCanPostal(StateCD, PostCD)
{
	var fletter=PostCD.substring(0,1);
	fletter = fletter.toUpperCase();

	for(i=0;i<13;i++)
	{
		if (StateCD==CanCodes[i])
		{
			if (CanLetters[i].indexOf(fletter,0) == -1)
			{
				return false;
			}
			else
			{
				return true;
			}
		}
	}
	return true;
}

function checkEmailValue(emailValue)
{     //runs the validate script and returns error box or nonerror

	if (emailValue == "")
	{
		alert("You have not entered email address. Please re-enter it.");
		return false;
	}

	startPos = 0;

	commaPos = emailValue.indexOf(",",startPos+1);	//position of semicolomn
	while (commaPos != -1)
	{
		endPos = commaPos;
		emailElement = emailValue.substring(startPos,endPos);
		if(!validEmail(emailElement))
		{
			alert("You have entered an invalid email address. Please re-enter it.");
			return false;
		}
		startPos = endPos + 1;		
		commaPos = emailValue.indexOf(",",startPos);	//position of semicolomn
	}
	endPos = emailValue.length;
	emailElement = emailValue.substring(startPos,endPos);

	if(!validEmail(emailElement))
	{
		alert("You have entered an invalid email address. Please re-enter it.");
		return false;
	}
	return true;		
}
function checkSingleEmailValue(emailValue)
{     //runs the validate script and returns error box or nonerror

	if (emailValue == "")
	{
		alert("You have not entered email address. Please re-enter it.");
		return false;
	}

	if(!validEmail(emailValue))
	{
		alert("You have entered an invalid email address. Please re-enter it.");
		document.SendEmail.send_to.focus();
		return false;
	}
	return true;		
}								

function validEmail(email)
{
	invalidchars = " /:;,"

	if(email == "")
	{			//checks to see if blank field
		return false
	}
			
	for(i=0;i<invalidchars.length;i++){ //checks for invalid chars
			
	badchars = invalidchars.charAt(i)
			
	if(email.indexOf(badchars,0)!= -1)
	{
		return false
	}	
													}
	
	atPos = email.indexOf("@",1)  //holds position of "@"
			
	if(atPos == -1) 
	{	//checks to see if "@" present
		return false
	}
							
	if(email.indexOf("@",atPos+1) != -1) 
	{ //checks for second "@"
		return false
	}
							
	periodPos = email.indexOf(".",atPos) //holds position of "."
			
	if(periodPos == -1)
	{ //checks for presence of "."
		return false
	}
	if(periodPos+3 > email.length)
	{//makes sure at least two chars after the period
		return false
	}
	return true 
}
function CheckDropdown(selectBox)
{

	if(selectBox.selectedIndex == "0")
	{
		return false;
	}
	else
	{
		return true;
	}
}

function CheckUnselects(radioItem)
{
	for(i=0;i<radioItem.length;i++)
	{
		if(radioItem[i].checked)
		{
			return true;
		}//end if
	}//end for
	return false;
}
function CheckedRadioValue(radioItem)
{
	for(i=0;i<radioItem.length;i++)
	{
		if(radioItem[i].checked)
		{
			return radioItem[i].value;
		}//end if
	}//end for
	return false;
}
function CheckboxChecked(thisform,CheckBoxName)
{
var ChLength = CheckBoxName.length + 1;
var vName = CheckBoxName + "-";

var CBindex = 0;

	for ( i=0; i < thisform.elements.length; i++)
	{
		if (thisform.elements[i].type == "checkbox")
		{
			if (thisform.elements[i].name.substring(0,ChLength)==vName)
			{
				if (CBindex==0) {CBindex = i;}
				if (thisform.elements[i].checked)
				{
					return true;
					break;
				}
			}
		}

	}

	thisform.elements[CBindex].focus();
	return false;
}
function checkEmailValuePA(emailValue)
{     //runs the validate script and returns error box or nonerror

	if (emailValue == "")
	{
		//alert("You have not entered email address. Please re-enter it.");
		return true;
	}

	startPos = 0;

	commaPos = emailValue.indexOf(",",startPos+1);	//position of semicolomn
	while (commaPos != -1)
	{
		endPos = commaPos;
		emailElement = emailValue.substring(startPos,endPos);
		if(!validEmail(emailElement))
		{
			alert("You have entered an invalid email address. Please re-enter it.");
			return false;
		}
		startPos = endPos + 1;		
		commaPos = emailValue.indexOf(",",startPos);	//position of semicolomn
	}
	endPos = emailValue.length;
	emailElement = emailValue.substring(startPos,endPos);

	if(!validEmail(emailElement))
	{
		alert("You have entered an invalid email address. Please re-enter it.");
		return false;
	}
	return true;		
}
function AnswerCheck(form)
{ 
 // at least one newsletter should be checked
if ((form.ENEWS_DNP.checked==false) && (form.PROD_SHOWCASE_DNP.checked==false)&& (form.WHITEPAPERS_DNP.checked==false))
	{
 		alert('Please indicate which newsletter/s you would like to receive.');
		form.ENEWS_DNP.focus();
		return false;
	}
    if (form.FNAME.value == "")
	{
		alert("Please specify your First name.");
        	form.FNAME.focus();
		return false;
	}
	if (form.LNAME.value == "")
	{
		alert ("Please specify your Last name.");
        	form.LNAME.focus();
		return false;
	}
	if (form.COMPANY.value == "")
	{
		alert ("Please specify your Company name.");
        	form.COMPANY.focus();
		return false;
	}
	if (form.COUNTRY.selectedIndex == 0)
	{
		alert ("Please specify your Country.");
		form.COUNTRY.focus();
		return false;
	}
	if (form.EMAIL_ADDRESS.value == "")
	{
		alert ("Please specify your E-mail Address.");
        	form.EMAIL_ADDRESS.focus();
		return false;
       	}
	if (!validEmail(form.EMAIL_ADDRESS.value))
	{
		alert ("You have entered an invalid email address. Please re-enter it.");
		form.EMAIL_ADDRESS.focus();
		return false;
	}
	return true;
}

// list of countries eligible for free subscription

var CountryNames=new Array("","ANTIGUA", "ARGENTINA", "BAHAMAS","BARBADOS","BELIZE", "BOLIVIA", "BRAZIL", "CANADA", "CHILE", "COLOMBIA", "COSTA RICA", "CUBA", "DOMINICA", "DOMINICAN REPUBLIC", "EL SALVADOR", "ECUADOR", "FALKLAND ISLANDS", "FRENCH GUINEA", "GRENADA", "GUATEMALA", "GUYANA", "HAITI", "HONDURAS", "JAMAICA", "MARTINIQUE", "MONTSERRAT", "NICARAGUA", "PANAMA", "PARAGUAY", "PERU", "SAINT KITTS", "SAINT LUCIA", "SAINT VINCENT", "SURINAM", "TRINIDAD", "URUGUAY", "USA", "VENEZUELA");
        
// CountryCH is country selected by the user 
// check if the selected country belongs to the list of countries

function isCountry (CountryCH)
{

	for(i=0;i<38;i++)
	{
		if (CountryCH==CountryNames[i])
		{
			return true;
		}
	}
	return false;
}

function IsCanadian(StateCD)
{
	for(i=0;i<13;i++)
	{
		if (StateCD==CanCodes[i])
		{
			return true;
		}
	}
	return false;
}

