// MG100-626

var formObj = "";
var submitted = false;
var error = false;
var msg = "";

// CHECK FIELD EXISTENCE
function check_input(field_name, field_size, message) {
	if (formObj.elements[field_name] && (formObj.elements[field_name].type != "hidden")) {
		var field_value = formObj.elements[field_name].value;
		if (field_value.length < field_size) {
			msg = msg + "* " + message + "\n";
			error = true;
			
		}
	}
}

// CHECK FIELD EXISTS FOR PRODUCTS
function check_exists(field_name, field_size){
	if (formObj.elements[field_name] && (formObj.elements[field_name].type != "hidden")) {
		var field_value = formObj.elements[field_name].value;
		if (field_value.length < field_size){ 
			return false;
		}
		else{
			return true;
		}
	}
}

// CHECK THAT RADIO GROUP HAS 1 SELECTED
function check_radio(field_name, message){
	var flag = false;
	var radObj;
	radObj = formObj.elements[field_name];
	for( i = 0; i < radObj.length; i++ )
	{
		if( radObj[i].checked == true ){
			flag = true;
			break;
		}
	}
	
	if(flag == false){
		msg = msg + "* " + message + "\n";
		error = true;
	}
}

// CHECK EMAIL ADDRESS
function check_email(field_name, field_size, message, message1) {
	if (formObj.elements[field_name] && (formObj.elements[field_name].type != "hidden")) {
		var field_value = formObj.elements[field_name].value;
		if (field_value.length < field_size) {
			msg = msg + "* " + message + "\n";
			error = true;
		}
		else {
			i=field_value.indexOf("@")
			j=field_value.indexOf(".",i)
			k=field_value.indexOf(",")
			kk=field_value.indexOf(" ")
			jj=field_value.lastIndexOf(".")+1
			len=field_value.length
			if ((i>0) && (j>(1+1)) && (k==-1) && (kk==-1) && (len-jj >=2) && (len-jj<=3)) {
			}
			else {
				msg = msg + "* " + message1 + "\n";
				error = true;
			}
		}
	}
}

// CHECK EMAIL ADDRESS
function confirm_email(field_name, field_size, message) {
	var email1 = document.getElementById('PrimaryEmail1').value
	var email2 = document.getElementById('PrimaryEmail2').value
	if (email1 != email2) {
			msg = msg + "* " + message + "\n";
			error = true;
		}
}

// CHECK NUMERIC INPUT ONLY
function check_numeric(field_name, field_size, message, message1){
	var field_value = formObj.elements[field_name].value;
	var nums = "0123456789";
	
	if (field_value.length < field_size) {
		msg = msg + "* " + message + "\n";
		error = true;
	}
	else {
		var flag = 0;
			
		for (var i = 0; i < field_value.length; i++) {
		   if (nums.indexOf(field_value.charAt(i)) == -1) {
			   flag = 1;
			   break;
		   }
		}
		if (flag == 1) {
			msg = msg + "* " + message1 + "\n";
			error = true;
		}
	}
}

// CHECK INDIVIDUAL PHONE FIELD
function check_phone(field_name, field_length, message, message1){
	var field_value = formObj.elements[field_name].value;
	var Chars = "0123456789-()+ ";
	if (field_value.length < field_length) {
		msg = msg + "* " + message + "\n";		
		error = true;
	}
	else{
		for (var i = 0; i < field_value.length; i++) {
		   if (Chars.indexOf(field_value.charAt(i)) == -1) {
    		   msg = msg + "* " + message1 + "\n";
    		   error = true;
    		   break;
    	   }
    	}
    }
}

// CHECK AT LEAST 1 PHONE FIELD EXISTS AND THEIR FORMAT
function check_phone_fields(){
	if(check_exists("PrimaryHome", 1) == false && check_exists("PrimaryCell", 1) == false ){
		msg = msg + "* At least one of work, home, or cell phone # is required.\n";
		error= true;
	}
	else {
		if(check_exists("PrimaryHome", 1) == true){
			check_phone("PrimaryHome", 1, "", "* Home phone is invalid format.\n");
		}
		if(check_exists("PrimaryCell", 1) == true){
			check_phone("PrimaryCell", 1, "", "* Cell phone is invalid format.\n");
		}
		if(check_exists("PrimaryFax", 1) == true){
			check_phone("PrimaryFax", 1, "", "* Fax phone is invalid format.\n");
		}
	}
}

// CHECK AGREE $50 FEE TO CREATE ACCOUNT
function valCreatechk(theForm){
	if( theForm.checkbox.checked == false ){
		alert("You must check \"I Agree\" to proceed.");
		return false;
	}
	else
		return true;
}

/**********************************
* VALIDATES CREATE ACCOUNT FORM
**********************************/
function valCreate(theForm){


	if (submitted == true) {
		alert("This form has already been submitted. Please press Ok and wait for this process to be completed.");
		return false;
	}
	
	error = false;
	formObj = theForm;
	msg = "Insufficient data.\nPlease make the following corrections:\n\n";
	//check_input("firstName", 1, "firstName name is required.");	
	check_input("firstName", 1, "First name is required.");
	check_input("lastName", 1, "Last name is required.");
	check_input("txtresDate", 1, "Reservations Date is required.");
	//check_input("CompCity", 1, "City is required.");
	//check_input("CompState", 1, "State is required");
	//check_numeric("CompZip", 1, "Zip code is required.", "Zip code can only be numeric.");
	//check_input("Password", 1, "Please choose a password.");
	check_phone_fields();	
	check_email("email2", 1, "Email is required.", "Please enter correct Email format.");	
	//check_input("PrimaryContact", 1, "Primary Contact is required.");
	//check_input("SecondaryContact", 1, "Secondary Contact is required.");	
	check_phone("phone", 1, "Primary Contact person's phone # is required.", "Primary Contact phone # is invalid phone format.");
	//check_phone("SecondaryPhone", 1, "Secondary Contact person's phone # is required.", "Secondary Contact phone # is invalid phone format.");
	//check_input("ResaleNumber", 1, "California Resale Number is required.");
	//confirm_email("Emails", 1, "Emails do not match.");
	
	//if(check_exists("Ref1Event", 1)==false){
	//	msg = msg + "* One Event References are required for a booth.\n";
	//	error = true;
	//}
	
	//if(check_exists("Ref1FContact", 1)==false){
	//msg = msg + "* First Name for References Contacts are required for a booth.\n";
	//error = true;
	//}
	
	//if(check_exists("Ref1LContact", 1)==false){
	//msg = msg + "* Last Name for References Contacts are required for a booth.\n";
	//error = true;
	//}
	//else if(check_exists("Ref1Event", 1)==true && check_exists("Ref1Contact", 1)==false){
	//	check_phone("Ref1Phone", 1, "Contact person's phone # is required.", "Invalid phone format.");
	//	check_input("Ref1Date", 1, "Event Date is required.");
	//}
	//else{
	//	check_phone("Ref1Phone", 1, "First contact person's phone # is required.", "Invalid first contact's phone format.");
	//	check_input("Ref1Date", 1, "Event Date is required.");
	//}
	
	//check_radio("CompanyTypeID", "Please select your company type.");

	if (error == true) {
		alert(msg);
		return false;
	}
	else {
		submitted = true;
		return true;
	}
}

/**********************************
* VALIDATES CONCESSION FORM
**********************************/
function valLAGeneric(theForm){
	if (submitted == true) {
		alert("This form has already been submitted. Please press Ok and wait for this process to be completed.");
		return false;
	}
	
	error = false;
	formObj = theForm;
	msg = "Insufficient data.\nPlease make the following corrections:\n\n";

	check_radio("rbLYF", "Please specify if you would like the same location as last year.");		
	check_radio("rbMic", "Please specify if you would like Microphone.");	
	check_radio("rbAV", "Please specify if you would like Audio/Visual.");	
	check_radio("rbdemo", "Please specify if you would like Demonstration.");	
	check_radio("rbGivaAway", "Please specify if you would like Give-Aways.");	
	check_radio("rbMist", "Please specify if you would like Misting System.");	
	check_radio("rbLeadGen", "Please specify if you would like Lead Generate.");	
	check_radio("rbSample", "Please specify if you would like Sampling.");	
	check_radio("rbFreeDraw", "Please specify if you would like Free Draw.");	

	check_input("Product1", 1, "One Product is required.");
	check_input("Price1", 1, "One Price is required.");
	check_input("Image1", 1, "One Image name is required.");

	
	/***if(check_exists("Product1", 1) == false && check_exists("Product2", 1) == false){
		msg = msg + "* At least 1 product is required.\n";
		error = true;
		}
		
	
		
	check_numeric("SpaceFront", 1, "Please specify the space front/width.", "Space value for front/width needs to be numeric only.");
	check_numeric("SpaceDepth", 1, "Please specify the space depth.", "Space value for depth needs to be numeric only.");
	check_input("Elec1_Desc", 1, "Please specify the Electrical Description.");
	check_numeric("Elec1_Phase", 1, "Please specify the Electrical Phase.", "Electrical phase value needs to be numeric only.");
	check_numeric("Elec1_Amps", 1, "Please specify the Electrical Amperes.", "Electrical amperes value needs to be numeric only.");
	check_numeric("Elec1_Volts", 1, "Please specify the Electrical Voltage.", "Electrical voltage value needs to be numeric only.");
	check_radio("RunWater", "Please specify if you need running water.");
	check_radio("Sewer", "Please specify if you need sewer.");
	check_radio("Cookout", "Please specify if you need outdoor cooking.");**/

	if (error == true) {
		alert(msg);
		return false;
	}
	else {
		submitted = true;
		return true;
	}
}

/**********************************
* VALIDATES COMMERCIAL EXHIBITION FORM
**********************************/
function valCommerica(theForm){
	if (submitted == true) {
		alert("This form has already been submitted. Please press Ok and wait for this process to be completed.");
		return false;
	}
	
	error = false;
	formObj = theForm;
	msg = "Insufficient data.\nPlease make the following corrections:\n\n";
	
	if(check_exists("Product1", 1) == false && check_exists("Product2", 1) == false){
		msg = msg + "* At least 1 product is required.\n";
		error=true;
	}
	check_input("BrandNames",1, "Please specify the Brandname/Manufacturer.");
	check_input("CostRange",1, "Please specify the product cost range.");
	
	check_numeric("SpaceFront", 1, "Please specify the space front/width.", "Space value for front/width needs to be numeric only.");
	check_numeric("SpaceDepth", 1, "Please specify the space depth.", "Space vlaue for depth needs to be numeric only.");
	
	check_radio("UseAmp", "Please specify if you use Amplification.");
	check_radio("LocationPref", "Please specify your location preference.");
	check_input("Elec1_Desc", 1, "Please specify the Electrical Description.");
	check_numeric("Elec1_Phase", 1, "Please specify the Electrical Phase.", "Electrical phase value needs to be numeric only.");
	check_numeric("Elec1_Amps", 1, "Please specify the Electrical Amperes.", "Electrical amperes value needs to be numeric only.");
	check_numeric("Elec1_Volts", 1, "Please specify the Electrical Voltage.", "Electrical voltage value needs to be numeric only.");
	check_radio("HaveSamples", "Please specify if you will hand out edible samples.");
	
	if (error == true) {
		alert(msg);
		return false;
	}
	else {
		submitted = true;
		return true;
	}
}

/**********************************
* VALIDATES SUPPLIER FORM
**********************************/
function valSupplier(theForm){
	if (submitted == true) {
		alert("This form has already been submitted. Please press Ok and wait for this process to be completed.");
		return false;
	}
	
	error = false;
	formObj = theForm;
	msg = "Insufficient data.\nPlease make the following corrections:\n\n";
	
	if(check_exists("Product1", 1) == false && check_exists("Product2", 1) == false){
		msg = msg + "* At least 1 product is required.\n";
		error=true;
		}
	check_numeric("SpaceFront", 1, "Please specify the space front/width.", "Space value for front/width needs to be numeric only.");
	check_numeric("SpaceDepth", 1, "Please specify the space depth.", "Space vlaue for depth needs to be numeric only.");
	check_input("Elec1_Desc", 1, "Please specify the Electrical Description.");
	check_numeric("Elec1_Phase", 1, "Please specify the Electrical Phase.", "Electrical phase value needs to be numeric only.");
	check_numeric("Elec1_Amps", 1, "Please specify the Electrical Amperes.", "Electrical ampere value needs to be numeric only.");
	check_numeric("Elec1_Volts", 1, "Please specify the Electrical Voltage.", "Electrical voltage value needs to be numeric only.");
	check_radio("RunWater", "Please specify if you need running water.");
	check_radio("Sewer", "Please specify if you need sewer.");
	
	if (error == true) {
		alert(msg);
		return false;
	}
	else {
		submitted = true;
		return true;
	}
}

function OnChange()
{
	var firstchoice = formObj.elements[FirstChoice].value;
	var secondchoice = formObj.elements[SecondChoice].value;
	var thridchoice = formObj.elements[ThirdChoice].value;
	alert(firstchoice);
	alert(secondchoice);
	alert(thridchoice);
	
	    
    return true;
}



/**********************************
* VALIDATES AMUSEMENT FORM
**********************************/
function valAmuse(theForm){
	if (submitted == true) {
		alert("This form has already been submitted. Please press Ok and wait for this process to be completed.");
		return false;
	}
	
	error = false;
	formObj = theForm;
	msg = "Insufficient data.\nPlease make the following corrections:\n\n";
	
	if(check_exists("Product1", 1) == false && check_exists("Product2", 1) == false){
		msg = msg + "* At least 1 product is required.\n";
		error=true;
		}
	check_input("CostRange", 1, "Please specify the product cost range.");
	check_numeric("SpaceFront", 1, "Please specify the space front/width.", "Space value for front/width needs to be numeric only.");
	check_numeric("SpaceDepth", 1, "Please specify the space depth.", "Space value for depth needs to be numeric only.");	
	check_input("Elec1_Desc", 1, "Please specify the Electrical Description.");
	check_numeric("Elec1_Phase", 1, "Please specify the Electrical Phase.", "Electrical phase value needs to be numeric only.");
	check_numeric("Elec1_Amps", 1, "Please specify the Electrical Amperes.", "Electrical ampere value needs to be numeric only.");
	check_numeric("Elec1_Volts", 1, "Please specify the Electrical Voltage.", "Electrical voltage value needs to be numeric only.");
	
	if (error == true) {
		alert(msg);
		return false;
	}
	else {
		submitted = true;
		return true;
	}
}

// MG100-626
