	function currentFormIdx(){
		formNames = ['contact_form','careers_form','sales_form','media_form','services_form'];
		var currentForm = getContactType();
		for (var i=0;i<=formNames.length - 1;i++){
			if(formNames[i] == currentForm){
				return i;
			}
		}
	}
	function errorMessage(p_invalidFields){
		var errorOut = 'Please enter the following:';
		for(var j=0;j<=p_invalidFields.length-1;j++){
			if (p_invalidFields[j] != null){
				errorOut += "\r\n\t - "+p_invalidFields[j].name;
			}
		}
		alert(errorOut);

	}
	
	function validateEmail(emailField){
		var RegExEmail = /^(?:\w+\.?)*\w+@(?:\w+\.)+\w+$/;
		if (!RegExEmail.test(emailField.value)){
			return false;
		}else{
			return true;
		}
	}
	
	function isArray(obj){return(typeof(obj.length)=="undefined")?false:true;}
	
	function findInvalidFields(p_contactType,p_requiredFields){
		var r_invalidFields = [];
		for (i=0;i<=p_requiredFields.length-1;i++){
			var fieldVar = null;
			var fld = document.forms[p_contactType][p_requiredFields[i]];
			if(isArray(fld)){
				if (fld[0].type == 'radio'){
					fieldVar = fld;
				}else{
					fieldVar = fld;
				}
			}else{
				fieldVar = fld;
			}

			if (fieldVar.name == 'email' && !validateEmail(fieldVar)){
				// Check an e-mail address
				r_invalidFields.push(fieldVar);
			}else if(isArray(fieldVar) && fieldVar[0].type == 'radio'){
				// Check a radio button
				var radioValue = null;
				var errorPosition = 0;
				for (var j=0;j<=fieldVar.length-1;j++){
					if(fieldVar[j].checked == true) {
						radioValue = fieldVar[j].name;
					}
				}
				if (radioValue == null){
					r_invalidFields.push(fieldVar[errorPosition]);
				}
			}else if (fieldVar.value == ''){
				r_invalidFields.push(fieldVar);
			}
		}
		return r_invalidFields;
	}
	
	// Validate the form
	function validateForm(){
		var contactType = getContactType();
		var invalidFields = [];
		var requiredFields = [];
		
		// Specify the fields that need to be validated per form
		if(contactType == 'contact_form'){
			requiredFields = ['company','name','address','state','city','zip','phone','email','request info','comments'];
		}else if(contactType == 'careers_form'){
			requiredFields = ['company','name','address','state','city','zip','phone','email','position','resume'];
		}else if(contactType == 'sales_form'){
			requiredFields = ['company','name','address','state','city','zip','phone','email','inquery','sales_budget','comments'];
		}else if(contactType == 'media_form'){
			requiredFields = ['company','name','address','state','city','zip','phone','email','comments'];
		}else if(contactType == 'discovery_form'){
			requiredFields = ['name','email'];
		}else if(contactType == 'rfi_form'){
			requiredFields = ['name','email'];
		}/*else if(contactType == 'services_form'){
			requiredFields = ['company','name','address','state','city','zip','phone','email','services','comments'];
		}*/
		
		// This checks the error -- no need to change below here.
		invalidFields = findInvalidFields(contactType,requiredFields);
		if (invalidFields.length > 0){
			errorMessage(invalidFields);
			return false;
		}else{
			return true;
		}
	}
	function hideAll(){
		hidesubForms();
		formNames = ['contact_form','careers_form','sales_form','media_form','services_form'];
		for (var i=0;i<=formNames.length-1;i++){
			var varDiv = document.getElementById(formNames[i]);
			if (varDiv != undefined){
				varDiv.style.display = 'none'
				varDiv.style.visibility = "hidden";
				varDiv.style.height = "0";
			}
		}
	}
	
	function showDiv(divVar){
		divVar.style.display = "block";
		divVar.style.visibility = "visible";
		divVar.style.height = "auto";
	}
	
	function setContactType(p_contactType){
		var contactType = document.getElementById('contact_type');
		contactType.value = p_contactType;
	}
	
	function getContactType(){
		var contactType = document.getElementById('contact_type');
		return contactType.value;
	}
	
	function unhideform(p_whichForm) {
		hideAll();
		var varDiv = document.getElementById(p_whichForm);
		if (varDiv != null){
			setContactType(p_whichForm);
			showDiv(varDiv);
		}
	}
	
	function hidesubForms(){
		var subformNames = ['products_subform','services_subform','xrkade_subform','design_subform,']
		for (var i=0;i<=subformNames.length-1;i++){
			var varDiv = document.getElementById(subformNames[i]);
			if (varDiv != undefined){
				varDiv.style.display = 'none'
				varDiv.style.visibility = "hidden";
				varDiv.style.height = "0";
			}
		}		
	}
	function unhidesubform(p_whichForm) {
		hidesubForms();
		var varDiv = document.getElementById(p_whichForm);
		if (varDiv != null){
			varDiv.style.display = 'block'
			setContactType(p_whichForm);
			showDiv(varDiv);
		}
	}