// declare global variables
var i;
var form_index;
var FUNCTIONS_start;
var FUNCTIONS_end;
var SOFTWARE_SPECIFY;
var SOFTWARE_SPEC_OUTSRC;
var PRODUCTS_SPECIFY;
var ENTERPRISE_SOFTWARE;
var PRODUCTS_IN_USE;
var ENEWSLETTERS;
var ENEWSLETTERS_ALL;
var SubmitFlag;
var errMsg;
var errFlag;
var CBindex;

function InitIndex2(formindex)
{
	form_index== formindex;
	for ( i=0; i < document.forms[formindex].elements.length; i++)
	{
		//alert("i " + i + " ind " + formindex)
	var oTestGroup = document.forms[formindex].getElementById('FNCT');
		GetIndex(formindex, "FUNCTIONS");
		FUNCTIONS_start = i;
		i++;
		break;
	}
}

function GetIndex(formindex, GroupName)
{
	var namelen = GroupName.length;
	
	while (document.forms[formindex].elements[i].name.substring(0,namelen) != GroupName)
	{
		i++;
	}
}
function doReset()
{
	document.qualform.reset();
}


function formCheck(mode, description)
{ 
	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 (ObjectExists(document.qualform,"REQUESTED_VERSION"))	
	{
		if (!checkUnselects(document.qualform.REQUESTED_VERSION))
		{
			alert("Please specify the requested version.");
        	document.qualform.REQUESTED_VERSION[0].focus();
			return false;
		
		}
	}
	
	
	if ((mode == "SHORT") || (mode == "ABBR"))
	{
		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 or select 'I am not in the US or Canada'.");
		        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;
			}
		}
// email
		if(document.qualform.EMAIL_ADDRESS.value == "")
		{
		 	alert("Please specify your E-mail Address.");
       		 	document.qualform.EMAIL_ADDRESS.focus();
		 	return false;
        	}
		if(!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;
		}	     
		
		
	}
	// CHECK DEMO
	if (!DemoBlock(mode))
	{
		return false;
	}
	return true;	
	
 }  

function formCheckAlt(mode, description)
{ 
	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 (ObjectExists(document.qualform,"REQUESTED_VERSION"))	
	{
		if (!checkUnselects(document.qualform.REQUESTED_VERSION))
		{
			alert("Please specify the requested version.");
        	document.qualform.REQUESTED_VERSION[0].focus();
			return false;
		
		}
	}

	if (document.qualform.PERSONAL_ID.value=='')
	{
	alert("Please specify the Personal ID - First letter of your mother's maiden name?");
        document.qualform.PERSONAL_ID.focus();
		return false;
		
	}	
		
	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.");
		        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_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.");
		        	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.PhoneArea.value.length < 3)
		{
			alert("Please specify your area code.");
        		document.qualform.PhoneArea.focus();
			return false;
		}
		if(document.qualform.PhoneExch.value.length < 3)
		{
			alert("Please specify first three digits of your phone number.");
        		document.qualform.PhoneExch.focus();
			return false;
		}
		if(document.qualform.Phone.value.length < 4)
		{
			alert("Please specify the last four digits of your phone number.");
        		document.qualform.Phone.focus();
			return false;
		}
	//	if(document.qualform.EMAIL_ADDRESS.value == "")
		//{
		//	alert("Please specify your E-mail.");
	 //       	document.qualform.EMAIL_ADDRESS.focus();
		//	return false;
		//}
// email
		if(document.qualform.EMAIL_ADDRESS.value == "")
		{
		 	alert("Please specify your E-mail Address.");
       		 	document.qualform.EMAIL_ADDRESS.focus();
		 	return false;
        	}
		if(!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;
		}	     
		
// CHECK DEMO
	if (!DemoBlock(mode))
	{
		return false;
	}
	
// passalong validation	
	if ((document.qualform.PNM01_FNAME.value == "")&&(document.qualform.PNM01_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM01_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM01_FNAME.value != "")&&(document.qualform.PNM01_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM01_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM01_TITLE.value != "")&&(document.qualform.PNM01_FNAME.value == ""))&&(document.qualform.PNM01_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM01_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM01_FNAME.value != "")&&(document.qualform.PNM01_LNAME.value != "")) && (document.qualform.PNM01_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM01_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM01_FNAME.value == "")||(document.qualform.PNM01_LNAME.value == "")) && (document.qualform.PNM01_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM01_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM01_EMAIL_ADDRESS.value!="")
	{
		if(!validEmail(document.qualform.PNM01_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM01_EMAIL_ADDRESS.focus();
		return false;
		}
	}	
//pa2		  	
	if ((document.qualform.PNM02_FNAME.value == "")&&(document.qualform.PNM02_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM02_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM02_FNAME.value != "")&&(document.qualform.PNM02_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM02_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM02_TITLE.value != "")&&(document.qualform.PNM02_FNAME.value == ""))&&(document.qualform.PNM02_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM02_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM02_FNAME.value != "")&&(document.qualform.PNM02_LNAME.value != "")) && (document.qualform.PNM02_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM02_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM02_FNAME.value == "")||(document.qualform.PNM02_LNAME.value == "")) && (document.qualform.PNM02_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM02_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM02_EMAIL_ADDRESS.value!="")
	{
	
		if(!validEmail(document.qualform.PNM02_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM02_EMAIL_ADDRESS.focus();
		return false;
		}
	}	  	
//pa3

	if ((document.qualform.PNM03_FNAME.value == "")&&(document.qualform.PNM03_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM03_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM03_FNAME.value != "")&&(document.qualform.PNM03_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM03_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM03_TITLE.value != "")&&(document.qualform.PNM03_FNAME.value == ""))&&(document.qualform.PNM03_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM03_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM03_FNAME.value != "")&&(document.qualform.PNM03_LNAME.value != "")) && (document.qualform.PNM03_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM03_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM03_FNAME.value == "")||(document.qualform.PNM03_LNAME.value == "")) && (document.qualform.PNM03_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM03_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM03_EMAIL_ADDRESS.value!="")
	{
	
		if(!validEmail(document.qualform.PNM03_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM03_EMAIL_ADDRESS.focus();
		return false;
		}	
}  	
//pa4
	if ((document.qualform.PNM04_FNAME.value == "")&&(document.qualform.PNM04_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM04_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM04_FNAME.value != "")&&(document.qualform.PNM04_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM04_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM04_TITLE.value != "")&&(document.qualform.PNM04_FNAME.value == ""))&&(document.qualform.PNM04_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM04_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM04_FNAME.value != "")&&(document.qualform.PNM04_LNAME.value != "")) && (document.qualform.PNM04_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM04_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM04_FNAME.value == "")||(document.qualform.PNM04_LNAME.value == "")) && (document.qualform.PNM04_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM04_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM04_EMAIL_ADDRESS.value!="")
	{
	
		if(!validEmail(document.qualform.PNM04_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM04_EMAIL_ADDRESS.focus();
		return false;
		}	  	
	}
		
	return true;	
		
 }  
 
function DemoBlock(mode)
{
//question 2
	if (!checkUnselects(document.qualform.INDUSTRY))
	{
		alert ("Please check Question 2: Industry.");
		document.qualform.INDUSTRY[1].focus();
		return false;
	}

	if ((CheckedRadioValue(document.qualform.INDUSTRY) == '98') && (document.qualform.INDUSTRY_DESC.value == ''))
	{
		alert ("Please specify Question 2 - Other Industry.");
		document.qualform.INDUSTRY_DESC.focus();
		return false;
	}

	
	if ((mode == "RENEW")||(mode == "COA"))
	{
		if (document.getElementById('INDUSTRY_CONFIRM'))
		{
			if (document.getElementById('INDUSTRY_CONFIRM').checked==false) 
			{ 
				alert("Please confirm your Question 2 answer.");
				myFocus=document.getElementById("INDUSTRY_CONFIRM");
				myFocus.scrollIntoView(true);

				return false;
			}
		}
	}
	
//question 3	
	if (!checkUnselects(document.qualform.JOB_TITLE))
	{
		alert ("Please check Question 3: Job Title.");
		document.qualform.JOB_TITLE[1].focus();
		return false;
	}

	if ((CheckedRadioValue(document.qualform.JOB_TITLE) == '98') && (document.qualform.JOB_TITLE_DESC.value == ''))
	{
		alert ("Please specify Question 3 - Other Job Title.");
		document.qualform.JOB_TITLE_DESC.focus();
		return false;
	}

	if ((mode == "RENEW")||(mode == "COA"))	
	{
		if (document.getElementById('JOB_TITLE_CONFIRM'))
		{
			if (document.getElementById('JOB_TITLE_CONFIRM').checked==false) 
			{ 
				alert("Please confirm your Question 3 answer.");
				myFocus=document.getElementById("JOB_TITLE_CONFIRM");
				myFocus.scrollIntoView(true);
				//document.forms[0].JOB_TITLE_CONFIRM.focus();
				return false;
			}
		}
	}
//question 4	
//	if (!CheckboxChecked('FUNCTION'))
//	{
//		alert ("Please check Question 4: Job Functions.");
//		document.qualform.elements[CBindex].focus();		
//		return false;
//	}	
	
	
	// question 4
	
	if (!checkDropdown(document.qualform.EMPLOYEES))
	{
		alert ("Please select Question 4: Employees.");
		document.qualform.EMPLOYEES.focus();
		return false;
	}	
	if ((mode == "RENEW")||(mode == "COA"))
	{	
		if (document.getElementById('EMPLOYEES_CONFIRM'))
		{
			if (document.getElementById('EMPLOYEES_CONFIRM').checked==false) 
			{ 
				alert("Please confirm your Question 4 answer.");
				myFocus=document.getElementById("EMPLOYEES_CONFIRM");
				myFocus.scrollIntoView(true);
				//document.forms[0].JOB_TITLE_CONFIRM.focus();
				return false;
			}
		}
	}
	
	// question 5
	
	if (!checkDropdown(document.qualform.BUDGET))
	{
		alert ("Please select Question 5: Budget.");
		document.qualform.BUDGET.focus();
		return false;
	}	
	if ((mode == "RENEW")||(mode == "COA"))
	{	
		if (document.getElementById('BUDGET_CONFIRM'))
		{
			if (document.getElementById('BUDGET_CONFIRM').checked==false) 
			{ 
				alert("Please confirm your Question 5 answer.");
				myFocus=document.getElementById("BUDGET_CONFIRM");
				myFocus.scrollIntoView(true);
				//document.forms[0].JOB_TITLE_CONFIRM.focus();
				return false;
			}
		}
	}
		

//question 6	
	
//question 7	

//question 8	
	
//question 9
	
//question 10
	
//question 11
	
	return true;
} 

function checkUnselects(radioItem)
{
	for(i=0;i<radioItem.length;i++)
	{
		if(radioItem[i].checked)
		{
			return true;
		}
	}
	return false;
}

function CheckedRadioValue(radioItem)
{
	for(i=0;i<radioItem.length;i++)
	{
		if(radioItem[i].checked)
		{
			return radioItem[i].value;
		}
	}
	return false;
}

function CheckboxChecked(CheckBoxName)
{
var ChLength = CheckBoxName.length + 1;
var vName = CheckBoxName + "-";

CBindex = 0;
	for ( i=0; i < document.qualform.elements.length; i++)
	{
		if (document.qualform.elements[i].type == "checkbox")
		{
			if (document.qualform.elements[i].name.substring(0,ChLength)==vName)
			{
				if (CBindex==0) {CBindex = i;}
				if (document.qualform.elements[i].checked)
				{
					return true;
					break;
				}
			}
		}

	}
	//document.qualform.elements[CBindex].focus();
	return false;
}

function checkDropdown(selectBox)
{
	if(selectBox.selectedIndex == "")
	{
		return false;
	}
	else
	{
		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.");
			document.qualform.EMAIL_ADDRESS.focus();
			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.");
		document.qualform.EMAIL_ADDRESS.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 ValidNum(NumObj)
{
	var myNum, cleanNum;
	
	myNum = NumObj.value
	cleanNum = parseInt(myNum);

	if ( myNum == "")
	{
		return true;
	}
       	if(myNum != cleanNum)
	
	{
		alert("You have entered an invalid number.Please re-enter.");
		NumObj.focus();
		return false;
	}
	return true;
}

function PaidformCheck(mode, description)
{ 
	
  if (document.paidform.SUBSCRIPTION_STAT.value == "YES")
	  {		
		if(!checkUnselects(document.paidform.SUBSCRIPTION))	
		{
			alert("Please select your subscription.");
        		document.paidform.SUBSCRIPTION[0].focus();
			return false;
		}
	  }	
	
	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;
	}

	if(checkDropdown(document.paidform.CARD_TYPE))
	{
		// AmEx
		if(document.paidform.CARD_TYPE.selectedIndex==1)
		{
			if (!isAmericanExpress(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 credit card number. Please re-enter.")
        			document.paidform.CARD_NUMBER.focus();
				return false;
			}
		}

		// Visa
		if(document.paidform.CARD_TYPE.selectedIndex==3)
		{
			if (!isVisa(stripWhitespace(document.paidform.CARD_NUMBER.value)))
			{
				alert("Invalid credit 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;
	}

	if(document.paidform.EMAIL_ADDRESS.value == "")
	{
		alert("Please specify your e-mail 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 (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 (ObjectExists(document.paidform,"USonly"))
		{
			if ((document.paidform.USonly.value == "1")&&(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)
		{
			if (ObjectExists(document.paidform,"USonly"))
			{
	    			if (document.paidform.USonly.value == "1"||document.paidform.USonly.value == "2")
                  		{
					alert("Please specify your State.");
                                	document.paidform.STATE.focus();
                                	return false;
				}
			}
			else
	    		{
				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.selectedIndex == "")
			{
				alert("Please specify your Country.");
	        		document.paidform.COUNTRY.focus();
				return false;
			}
		}
	
		else
		{
			if (document.paidform.ZIPCODE.value.length < 5)
			{
				if (ObjectExists(document.paidform,"USonly"))
				{
	    				if (document.paidform.USonly.value == "1"||document.paidform.USonly.value == "2")
                  			{
						alert("Please specify your Zip Code.");
                                		document.paidform.ZIPCODE.focus();
                                		return false;
					}
                         	}
                  
				else
	    			{
					alert("Please specify your Zip/Postal Code.");
		        		document.paidform.ZIPCODE.focus();
					return false;
				}
			}

			if(document.paidform.PHONE.value == "")
			{
				alert("Please specify your phone number.");
        			document.paidform.PHONE.focus();
				return false;
			}
		}
//	}

//	if (mode == "RENEW")
//	{
//		if (document.paidform.SUBSCRIPTION_STAT.value == "YES")
//		{
//	  		if (document.paidform.COUNTRY.selectedIndex == "")
//			{
//				alert("Please specify your Country.");
//	       			document.paidform.COUNTRY.focus();
//				return false;
//			}
//		}

//		if(document.paidform.PHONE.value == "")
//		{
//			alert("Please specify your phone number.");
//        		document.paidform.PHONE.focus();
//			return false;
//		}
//	}
}

function formCheckBudget(description)
{
	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 (document.qualform.PERSONAL_ID.value=='')
	{
	alert("Please specify the Personal ID - First letter of your mother's maiden name?");
        document.qualform.PERSONAL_ID.focus();
		return false;
		
	}	
	return true;

}

function formCheckDemoAbbr ()
{
	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 Computerworld ?");
        	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 (document.qualform.PERSONAL_ID.value=='')
	{
	alert("Please specify the Personal ID - First letter of your mother's maiden name?");
        document.qualform.PERSONAL_ID.focus();
		return false;
		
	}	
	


}

function formCheckJT(description)
{
	if (!checkUnselects(document.qualform.JOB_TITLE))
	{
		alert ("Please check Job Title.");
		document.qualform.JOB_TITLE[1].focus();
		return false;
	}

	if ((CheckedRadioValue(document.qualform.JOB_TITLE) == '98') && (document.qualform.JOB_TITLE_DESC.value == ''))
	{
		alert ("Please specify Other Job Title.");
		document.qualform.JOB_TITLE_DESC.focus();
		return false;
	}
	return true;
}

function formCheckSpecEff(description)
{
	if (ObjectExists(document.qualform,"RECEIVE_YES_NO"))
	{
		if (document.qualform.RECEIVE_YES_NO.value != "1")
		{
			if(!document.qualform.RECEIVE_YES_NO[0].checked && !document.qualform.RECEIVE_YES_NO[1].checked)
			{
				alert("Please specify whether you wish to receive " + description +"?");
        			document.qualform.RECEIVE_YES_NO[0].focus();
				return false;
			}
		}
	}

	if (document.qualform.PERSONAL_ID.value=='')
	{
	alert("Please specify the Personal ID - First letter of your mother's maiden name?");
        document.qualform.PERSONAL_ID.focus();
		return false;
		
	}	

	if (ObjectExists(document.qualform,"UNCTION-01"))
	{
		if (!CheckboxChecked('UNCTION'))
		{
			alert ("Please job functions.");
			return false;
		}
	}

	if (ObjectExists(document.qualform,"EMPLOYEES"))
	{
		if (!checkDropdown(document.qualform.EMPLOYEES))
		{
			alert ("Please select number of employees.");
			document.qualform.EMPLOYEES.focus();
			return false;
		}
	}

	return true;
}

function formCheckTele(description)
{

	//question 7	only THIS location is required
	if (!checkUnselects(document.qualform.ELECTRONIC_THIS_LOC)) 
	{
		alert ("Please select Question 7: Electronic for THIS location.");
		document.qualform.ELECTRONIC_THIS_LOC[1].focus();
		return false;
	}	
	if (!checkUnselects(document.qualform.INTERNET_THIS_LOC)) 
	{
		alert ("Please select Question 7: Internet for THIS location.");
		document.qualform.INTERNET_THIS_LOC[1].focus();
		return false;
	}	
	if (!checkUnselects(document.qualform.TELECOM_THIS_LOC)) 
	{
		alert ("Please select Question 7: Telecom for THIS location.");
		document.qualform.TELECOM_THIS_LOC[1].focus();
		return false;
	}			
	if (!checkUnselects(document.qualform.DESKTOP_THIS_LOC)) 
	{
		alert ("Please select Question 7: Desktop for THIS location.");
		document.qualform.DESKTOP_THIS_LOC[1].focus();
		return false;
	}		
		if (!checkUnselects(document.qualform.SERVERS_THIS_LOC)) 
	{
		alert ("Please select Question 7: Servers for THIS location.");
		document.qualform.SERVERS_THIS_LOC[1].focus();
		return false;
	}	
	if (!checkUnselects(document.qualform.NETWORKING_THIS_LOC)) 
	{
		alert ("Please select Question 7: Networking for THIS location.");
		document.qualform.NETWORKING_THIS_LOC[1].focus();
		return false;
	}	
	if (!checkUnselects(document.qualform.LARGESYS_THIS_LOC))
	{
		alert ("Please select Question 7: Large Distributed Systems for THIS location.");
		document.qualform.LARGESYS_THIS_LOC[1].focus();
		return false;
	}		
	if (!checkUnselects(document.qualform.PERIPHERALS_THIS_LOC)) 
	{
		alert ("Please select Question 7: Peripherals for THIS location.");
		document.qualform.PERIPHERALS_THIS_LOC[1].focus();
		return false;
	}	
	if (!checkUnselects(document.qualform.SOFTWARE_THIS_LOC)) 
	{
		alert ("Please select Question 7: Software for THIS location.");
		document.qualform.SOFTWARE_THIS_LOC[1].focus();
		return false;
	}
		
	if (!checkUnselects(document.qualform.MOBILE_THIS_LOC))
	{
		alert ("Please select Question 7: Mobile for THIS location.");
		document.qualform.MOBILE_THIS_LOC[1].focus();
		return false;
	}
		
	if (!checkUnselects(document.qualform.STORAGE_THIS_LOC))
	{
		alert ("Please select Question 7: Storage Management for THIS location.");
		document.qualform.STORAGE_THIS_LOC[1].focus();
		return false;
	}		
		
	if (!checkUnselects(document.qualform.SYSTEMS_THIS_LOC))
	{
		alert ("Please select Question 7: Systems Integrators for THIS location.");
		document.qualform.SYSTEMS_THIS_LOC[1].focus();
		return false;		
	}
}

function ObjectExists(form,fieldname)
{
	for ( i=0; i < form.elements.length; i++)
	{
		if (form.elements[i].name == fieldname)
		{
			return true;
		}
	}
	return false;
}

function formCheckPA(description) // for pass along form
{ 
	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 (document.qualform.PERSONAL_ID.value=='')
	{
	alert("Please specify the Personal ID - First letter of your mother's maiden name?");
        document.qualform.PERSONAL_ID.focus();
		return false;
		
	}	
		

	if(document.qualform.PhoneArea.value.length < 3)
		{
			alert("Please specify your area code.");
        		document.qualform.PhoneArea.focus();
			return false;
		}
		if(document.qualform.PhoneExch.value.length < 3)
		{
			alert("Please specify first three digits of your phone number.");
        		document.qualform.PhoneExch.focus();
			return false;
		}
		if(document.qualform.Phone.value.length < 4)
		{
			alert("Please specify the last four digits of your phone number.");
        		document.qualform.Phone.focus();
			return false;
		}
// email
		if(document.qualform.EMAIL_ADDRESS.value == "")
		{
		 	alert("Please specify your E-mail Address.");
       		 	document.qualform.EMAIL_ADDRESS.focus();
		 	return false;
        	}
		if(!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;
		}	     
		
// CHECK DEMO
	//if (!DemoBlock())
	//{
	//	return false;
	//}
//question 3	
	if (!checkUnselects(document.qualform.JOB_TITLE))
	{
		alert ("Please check Question 2: Job Title.");
		document.qualform.JOB_TITLE[1].focus();
		return false;
	}

	if ((CheckedRadioValue(document.qualform.JOB_TITLE) == '98') && (document.qualform.JOB_TITLE_DESC.value == ''))
	{
		alert ("Please specify Question 2 - Other Job Title.");
		document.qualform.JOB_TITLE_DESC.focus();
		return false;
	}
	
	
//question 3
	
//question 4	

//question 5
	
//question 6
	
//question 7
	
	
// passalong validation	
	if ((document.qualform.PNM01_FNAME.value == "")&&(document.qualform.PNM01_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM01_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM01_FNAME.value != "")&&(document.qualform.PNM01_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM01_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM01_TITLE.value != "")&&(document.qualform.PNM01_FNAME.value == ""))&&(document.qualform.PNM01_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM01_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM01_FNAME.value != "")&&(document.qualform.PNM01_LNAME.value != "")) && (document.qualform.PNM01_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM01_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM01_FNAME.value == "")||(document.qualform.PNM01_LNAME.value == "")) && (document.qualform.PNM01_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM01_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM01_EMAIL_ADDRESS.value!="")
	{
		if(!validEmail(document.qualform.PNM01_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM01_EMAIL_ADDRESS.focus();
		return false;
		}
	}	
//pa2		  	
	if ((document.qualform.PNM02_FNAME.value == "")&&(document.qualform.PNM02_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM02_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM02_FNAME.value != "")&&(document.qualform.PNM02_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM02_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM02_TITLE.value != "")&&(document.qualform.PNM02_FNAME.value == ""))&&(document.qualform.PNM02_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM02_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM02_FNAME.value != "")&&(document.qualform.PNM02_LNAME.value != "")) && (document.qualform.PNM02_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM02_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM02_FNAME.value == "")||(document.qualform.PNM02_LNAME.value == "")) && (document.qualform.PNM02_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM02_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM02_EMAIL_ADDRESS.value!="")
	{
	
		if(!validEmail(document.qualform.PNM02_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM02_EMAIL_ADDRESS.focus();
		return false;
		}
	}	  	
//pa3

	if ((document.qualform.PNM03_FNAME.value == "")&&(document.qualform.PNM03_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM03_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM03_FNAME.value != "")&&(document.qualform.PNM03_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM03_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM03_TITLE.value != "")&&(document.qualform.PNM03_FNAME.value == ""))&&(document.qualform.PNM03_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM03_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM03_FNAME.value != "")&&(document.qualform.PNM03_LNAME.value != "")) && (document.qualform.PNM03_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM03_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM03_FNAME.value == "")||(document.qualform.PNM03_LNAME.value == "")) && (document.qualform.PNM03_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM03_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM03_EMAIL_ADDRESS.value!="")
	{
	
		if(!validEmail(document.qualform.PNM03_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM03_EMAIL_ADDRESS.focus();
		return false;
		}	
}  	
//pa4
	if ((document.qualform.PNM04_FNAME.value == "")&&(document.qualform.PNM04_LNAME.value != "")) 
	{
		alert("Please specify your colleague First Name.");
		document.qualform.PNM04_FNAME.focus();
		return false;
	}

	if ((document.qualform.PNM04_FNAME.value != "")&&(document.qualform.PNM04_LNAME.value == "")) 
	{
		alert("Please specify your colleague Last Name.");
		document.qualform.PNM04_LNAME.focus();
		return false;
	}
	
	if (((document.qualform.PNM04_TITLE.value != "")&&(document.qualform.PNM04_FNAME.value == ""))&&(document.qualform.PNM04_LNAME.value == "")) 
	{
		alert("Please specify your colleague First and Last Name.");
		document.qualform.PNM04_FNAME.focus();
		return false;
	}
	

	if (((document.qualform.PNM04_FNAME.value != "")&&(document.qualform.PNM04_LNAME.value != "")) && (document.qualform.PNM04_TITLE.value == ""))
	{
		alert("Please specify your colleague Title.");
		document.qualform.PNM04_TITLE.focus();
		return false;
	}
	if (((document.qualform.PNM04_FNAME.value == "")||(document.qualform.PNM04_LNAME.value == "")) && (document.qualform.PNM04_EMAIL_ADDRESS.value != ""))
	{
		alert("Please specify your colleague First and Last Name .");
		document.qualform.PNM04_FNAME.focus();
		return false;
	}
	if(document.qualform.PNM04_EMAIL_ADDRESS.value!="")
	{
	
		if(!validEmail(document.qualform.PNM04_EMAIL_ADDRESS.value))
		{
		alert("You have entered an invalid colleague Email Address. Please re-enter it.");
		document.qualform.PNM04_EMAIL_ADDRESS.focus();
		return false;
		}	  	
	}
		
	return true;	
		
 }  
