$(document).ready(function(){  
  
    $("ul.topnav li a.subnaved").hover(function() { //When trigger is clicked...  
  
        //Following events are applied to the subnav itself (moving subnav up and down)  
        $(this).parent().find("ul.subnav").slideDown('fast').show(); //Drop down the subnav on click  
  
        $(this).parent().hover(function() {  
        }, function(){  
            $(this).parent().find("ul.subnav").slideUp('fast'); //When the mouse hovers out of the subnav, move it back up  
        });  
  
        //Following events are applied to the trigger (Hover events for the trigger)  
        }).hover(function() {  
            $(this).addClass("subhover"); //On hover over, add class "subhover"  
        }, function(){  //On Hover Out  
            $(this).removeClass("subhover"); //On hover out, remove class "subhover"  
    });  
  
});  

function ajax() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

function emailHandle(value) {
	if(value == '') {
		document.getElementById("email_newsletter").value = 'email address';
	} else if(value == 'email address') {
		document.getElementById("email_newsletter").value = '';	
	}
}

function submitEmail() {
	email = document.getElementById("email_newsletter").value;
	document.getElementById("email_newsletter").value = '...';
	
	var ajx = new ajax;
	ajx.open('get', 'script/ajax.php?action=submitemail&email=' + email, true);
	ajx.onreadystatechange = function() {
	   if(ajx.readyState == 4) {
		  	//alert(ajx.responseText);
			document.getElementById("email_newsletter").value = 'You are signed up. Thanks!';		
	   }
	}
	ajx.send(null);
}

function checkContactForm() {
	if(document.contactForm.name.value == '') {
		alert("Please enter your name.");	
	} else if(document.contactForm.email.value == '') {
		alert("Please enter your email.");	
	} else if(document.contactForm.message.value =='') {
		alert("Please enter your message.");	
	} else {
		document.contactForm.submit();
	}	
}

function getExhibitPrice() {
	quantity = document.exhibitForm.numberofspaces.value;
	promo = document.exhibitForm.promo.value;
	corner = document.exhibitForm.corner.value;
	
	params = '&quantity=' + quantity + '&promo=' + promo + '&corner=' + corner;
	
	var ajx = new ajax;
	ajx.open('get', 'script/ajax.php?action=exhibitSpace&do=getPrice' + params, true);
	ajx.onreadystatechange = function() {
	   if(ajx.readyState == 4) {
		  	//alert(ajx.responseText);
			response = ajx.responseText.split("|");
			
			//PROMO CODE HANDLER
			if(response[2] != '' && response[1] == 1) {
				document.getElementById('promoMsg').innerHTML = response[2];
			} else if(response[1] == 1 && response[2] == '') {
				document.getElementById('promoMsg').innerHTML = 'Promo code accepted.';
			} else if(response[1] == 2) {
				document.getElementById('promoMsg').innerHTML = 'Promo code unacceptable.'	
			} else {
				document.getElementById('promoMsg').innerHTML = '';
			}
			
			document.getElementById("totalPrice").innerHTML = '$' + response[0];
			document.exhibitForm.amount.value = response[0];
	   }
	}
	ajx.send(null);
}

function getTicketPrice() {
	quantity = document.ticketForm.numberoftickets.value;
	promo = document.ticketForm.promo.value;
	type = document.ticketForm.type.value;
	shirts = document.ticketForm.shirts.value;
	extralife = document.ticketForm.extralife.value;
	
	params = '&quantity=' + quantity + '&promo=' + promo + '&type=' + type + '&shirts=' + shirts + '&extralife=' + extralife;
	
	//alert(params);
	
	var ajx = new ajax;
	ajx.open('get', 'script/ajax.php?action=tickets&do=getPrice' + params, true);
	ajx.onreadystatechange = function() {
	   if(ajx.readyState == 4) {
		  	//alert(ajx.responseText);
			response = ajx.responseText.split("|");
			
			// TOTAL|TYPE|PROMORETURN|PROMOMSG|PRICEEACH|QUANTITY
			
			//PROMO CODE HANDLER
			if(response[3] != '' && response[1] == 2) {
				document.getElementById('promoMsg').innerHTML = response[3];
			} else if(response[3] != '' && response[1] == 1) {
				document.getElementById('promoMsg').innerHTML = response[3];
			} else if(response[2] == 1 && response[3] == '') {
				document.getElementById('promoMsg').innerHTML = 'Promo code accepted.';
			} else if(response[2] == 2) {
				document.getElementById('promoMsg').innerHTML = 'Promo code unacceptable.'	
			} else {
				document.getElementById('promoMsg').innerHTML = '';
			}
			
			if(response[1] == 1) {
				document.getElementById("type").selectedIndex = 0;
			} else if(response[1] == 2) {
				document.getElementById("type").selectedIndex = 1;
			}
			
			document.ticketForm.numberoftickets.selectedIndex = response[5]-1;
			
			document.getElementById("totalPrice").innerHTML = '$' + response[0];
			document.ticketForm.amount.value = response[0];
	   }
	}
	ajx.send(null);
}

function getLanPrice() {
	quantity = document.lanForm.quantity.value;
	shirts = document.lanForm.shirts.value;
	extralife = document.lanForm.extralife.value;
	promo = document.lanForm.promo.value;
	
	params = '&quantity=' + quantity + '&promo=' + promo + '&shirts=' + shirts + '&extralife=' + extralife;
	
	var ajx = new ajax;
	ajx.open('get', 'script/ajax.php?action=lan&do=getPrice' + params, true);
	ajx.onreadystatechange = function() {
	   if(ajx.readyState == 4) {
			response = ajx.responseText.split("|");
			
			//PROMO CODE HANDLER
			if(response[3] != '' && response[1] == 2) {
				document.getElementById('promoMsg').innerHTML = response[3];
			} else if(response[3] != '' && response[1] == 1) {
				document.getElementById('promoMsg').innerHTML = response[3];
			} else if(response[2] == 1 && response[3] == '') {
				document.getElementById('promoMsg').innerHTML = 'Promo code accepted.';
			} else if(response[2] == 2) {
				document.getElementById('promoMsg').innerHTML = 'Promo code unacceptable.'	
			} else {
				document.getElementById('promoMsg').innerHTML = '';
			}			
			
			document.getElementById("totalPrice").innerHTML = '$' + response[0];
			document.lanForm.amount.value = response[0];
	   }
	}
	ajx.send(null);
}

function checkTicketForm() {
	if(document.ticketForm.first.value == '') {
		alert("Your first name is missing.");
		document.ticketForm.first.focus();
	} else if(document.ticketForm.last.value == '') {
		alert("Your last name is missing.");
		document.ticketForm.last.focus();
	} else if(document.ticketForm.address.value == '') {
		alert("Address missing.");
		document.ticketForm.address.focus();
	} else if(document.ticketForm.city.value == '') {
		alert("City missing.");
		document.ticketForm.city.focus();
	} else if(document.ticketForm.state.selectedIndex == 0) {
		alert("Select your state.");
	} else if(document.ticketForm.zip.value == '') {
		alert("Zip code missing.");
		document.ticketForm.zip.focus();
	} else if(document.ticketForm.phone.value == '') {
		alert("Phone number missing.");
		document.ticketForm.phone.focus();
	} else if(document.ticketForm.email.value == '') {
		alert("Email missing.");
		document.ticketForm.email.focus();
	} else {
		toCheckout("tickets");	
	}
}

function checkRegForm() {
	if(document.exhibitForm.company.value == '') {
		alert("Company name missing.");
		document.exhibitForm.company.focus();
	} else if(document.exhibitForm.name.value == '') {
		alert("Contact name missing.");
		document.exhibitForm.name.focus();
	} else if(document.exhibitForm.address.value == '') {
		alert("Address missing.");
		document.exhibitForm.address.focus();
	} else if(document.exhibitForm.city.value == '') {
		alert("City missing.");
		document.exhibitForm.city.focus();
	} else if(document.exhibitForm.state.selectedIndex == 0) {
		alert("Select your state.");
	} else if(document.exhibitForm.zip.value == '') {
		alert("Zip code missing.");
		document.exhibitForm.zip.focus();
	} else if(document.exhibitForm.phone.value == '') {
		alert("Phone number missing.");
		document.exhibitForm.phone.focus();
	} else if(document.exhibitForm.email.value == '') {
		alert("Email missing.");
		document.exhibitForm.email.focus();
	} else if(document.exhibitForm.description.value == '') {
		alert("Enter your product description.");
		document.exhibitForm.description.focus();
	} else {
		toCheckout("exhibitSpace");	
	}
}

function checkLanForm() {
	if(document.lanForm.first.value == '') {
		alert("Your first name is missing.");
		document.lanForm.first.focus();
	} else if(document.lanForm.last.value == '') {
		alert("Your last name is missing.");
		document.lanForm.last.focus();
	} else if(document.lanForm.address.value == '') {
		alert("Address missing.");
		document.lanForm.address.focus();
	} else if(document.lanForm.city.value == '') {
		alert("City missing.");
		document.lanForm.city.focus();
	} else if(document.lanForm.state.selectedIndex == 0) {
		alert("Select your state.");
	} else if(document.lanForm.zip.value == '') {
		alert("Zip code missing.");
		document.lanForm.zip.focus();
	} else if(document.lanForm.phone.value == '') {
		alert("Phone number missing.");
		document.lanForm.phone.focus();
	} else if(document.lanForm.email.value == '') {
		alert("Email missing.");
		document.lanForm.email.focus();
	} else {
		toCheckout("lan");	
	}
}

function checkTournForm() {
	if(document.tournamentForm.first.value == '') {
		alert("Your first name is missing.");
		document.tournamentForm.first.focus();
	} else if(document.tournamentForm.last.value == '') {
		alert("Your last name is missing.");
		document.tournamentForm.last.focus();
	} else if(document.tournamentForm.address.value == '') {
		alert("Address missing.");
		document.tournamentForm.address.focus();
	} else if(document.tournamentForm.city.value == '') {
		alert("City missing.");
		document.tournamentForm.city.focus();
	} else if(document.tournamentForm.state.selectedIndex == 0) {
		alert("Select your state.");
	} else if(document.tournamentForm.zip.value == '') {
		alert("Zip code missing.");
		document.tournamentForm.zip.focus();
	} else if(document.tournamentForm.phone.value == '') {
		alert("Phone number missing.");
		document.tournamentForm.phone.focus();
	} else if(document.tournamentForm.email.value == '') {
		alert("Email missing.");
		document.tournamentForm.email.focus();
	} else if(document.tournamentForm.alias.value == '') {
		alert("Alias missing.");
		document.tournamentForm.alias.focus();
	} else if(document.tournamentForm.amount.value != '15' && document.tournamentForm.amount.value != '35') {
		alert("fail.");
	} else {
		toCheckout("tournament");	
	}
}

function checkTournFormNoFee() {
	if(document.tournamentForm.first.value == '') {
		alert("Your first name is missing.");
		document.tournamentForm.first.focus();
	} else if(document.tournamentForm.last.value == '') {
		alert("Your last name is missing.");
		document.tournamentForm.last.focus();
	} else if(document.tournamentForm.address.value == '') {
		alert("Address missing.");
		document.tournamentForm.address.focus();
	} else if(document.tournamentForm.city.value == '') {
		alert("City missing.");
		document.tournamentForm.city.focus();
	} else if(document.tournamentForm.state.selectedIndex == 0) {
		alert("Select your state.");
	} else if(document.tournamentForm.zip.value == '') {
		alert("Zip code missing.");
		document.tournamentForm.zip.focus();
	} else if(document.tournamentForm.phone.value == '') {
		alert("Phone number missing.");
		document.tournamentForm.phone.focus();
	} else if(document.tournamentForm.email.value == '') {
		alert("Email missing.");
		document.tournamentForm.email.focus();
	} else if(document.tournamentForm.alias.value == '') {
		alert("Alias missing.");
		document.tournamentForm.alias.focus();
	} else {
		document.tournamentForm.submit();	
	}
}

function checkEventReg(id) {
	if(document.eventForm.first.value == '') {
		alert("Your first name is missing.");
		document.eventForm.first.focus();
	} else if(document.eventForm.last.value == '') {
		alert("Your last name is missing.");
		document.eventForm.last.focus();
	} else if(document.eventForm.address.value == '') {
		alert("Address missing.");
		document.eventForm.address.focus();
	} else if(document.eventForm.city.value == '') {
		alert("City missing.");
		document.eventForm.city.focus();
	} else if(document.eventForm.state.selectedIndex == 0) {
		alert("Select your state.");
	} else if(document.eventForm.zip.value == '') {
		alert("Zip code missing.");
		document.eventForm.zip.focus();
	} else if(document.eventForm.phone.value == '') {
		alert("Phone number missing.");
		document.eventForm.phone.focus();
	} else if(document.eventForm.email.value == '') {
		alert("Email missing.");
		document.eventForm.email.focus();
	} else {
		if(id == 1) {
			if(!$('#rulescheck').attr('checked')) {
				alert("You must agree to the rules");
			} else {
				document.eventForm.submit();
			}
		} else {
			document.eventForm.submit();
		}
	}
}

function toCheckout(which) {
	switch(which) {
		case "exhibitSpace":
			year = document.exhibitForm.year.value;
			company = document.exhibitForm.company.value;
			name = document.exhibitForm.name.value;
			address = document.exhibitForm.address.value;
			city = document.exhibitForm.city.value;
			state = document.exhibitForm.state.value;
			zip = document.exhibitForm.zip.value;
			phone = document.exhibitForm.phone.value;
			email = document.exhibitForm.email.value;
			website = document.exhibitForm.website.value;
			description = document.getElementById("description").value;
			numberofspaces = document.exhibitForm.numberofspaces.value;
			corner = document.exhibitForm.corner.value;
			requests = document.exhibitForm.requests.value;
			promo = document.exhibitForm.promo.value;
			transid = document.exhibitForm.transaction_id.value;
			amount = document.exhibitForm.amount.value;
			
			params = '&year=' + year + '&company=' + company + '&contact=' + name + '&address=' + address + '&city=' + city + '&state=' + state + '&zip=' + zip + '&phone=' + phone + '&email=' + email + '&website=' + website + '&description=' + description + '&numspaces=' + numberofspaces + '&corner=' + corner + '&requests=' + requests + '&promo=' + promo + '&transid=' + transid + '&amount=' + amount;
			
			action = "action=exhibitSpace&do=purchase";	
			break;
		
		case "tickets":
	
			year = '2011';
			first = document.ticketForm.first.value;
			last = document.ticketForm.last.value;
			address = document.ticketForm.address.value;
			city = document.ticketForm.city.value;
			state = document.ticketForm.state.value;
			zip = document.ticketForm.zip.value;
			phone = document.ticketForm.phone.value;
			email = document.ticketForm.email.value;
			quantity = document.ticketForm.numberoftickets.value;
			type = document.ticketForm.type.value;
			shirts = document.ticketForm.shirts.value;
			shirtsdetail = document.ticketForm.shirtsdetail.value;
			extralife = document.ticketForm.extralife.value;
			promo = document.ticketForm.promo.value;
			amount = document.getElementById("amount").value;
			transid = document.getElementById("transaction_id").value;
			
			var params = 'first=' + first + '&last=' + last + '&address=' + address + '&city=' + city + '&state=' + state + '&zip=' + zip + '&phone=' + phone + '&email=' + email + '&quantity=' + quantity + '&type=' + type + '&shirts=' + shirts + '&shirtsdetail=' + shirtsdetail + '&promo=' + promo + '&amount=' + amount + '&transid=' + transid + '&year=' + year + '&extralife=' + extralife;
		
			action = "action=tickets&do=purchase";
		
			break;
			
		case "lan":
		
			year = '2011';
			first = document.lanForm.first.value;
			last = document.lanForm.last.value;
			alias = document.lanForm.alias.value;
			clan = document.lanForm.clan.value;
			clantag = document.lanForm.clantag.value;
			address = document.lanForm.address.value;
			city = document.lanForm.city.value;
			state = document.lanForm.state.value;
			zip = document.lanForm.zip.value;
			phone = document.lanForm.phone.value;
			email = document.lanForm.email.value;
			quantity = document.lanForm.quantity.value;
			shirts = document.lanForm.shirts.value;
			shirtsdetail = document.lanForm.shirtsdetail.value;
			extralife = document.lanForm.extralife.value;
			amount = document.getElementById("amount").value;
			transid = document.getElementById("transaction_id").value;
			
			var params = 'first=' + first + '&last=' + last + '&alias=' + alias + '&clan=' + clan + '&clantag=' + clantag + '&address=' + address + '&city=' + city + '&state=' + state + '&zip=' + zip + '&phone=' + phone + '&email=' + email + '&quantity=' + quantity + '&shirts=' + shirts + '&shirtsdetail=' + shirtsdetail + '&amount=' + amount + '&transid=' + transid + '&year=' + year + '&donation=' + extralife;
		
			action = "action=lan&do=purchase";
		
			break;
			
		case "tournament":
			year = '2011';
			tournamentid = document.tournamentForm.tournamentid.value;
			first = document.tournamentForm.first.value;
			last = document.tournamentForm.last.value;
			address = document.tournamentForm.address.value;
			city = document.tournamentForm.city.value;
			state = document.tournamentForm.state.value;
			zip = document.tournamentForm.zip.value;
			phone = document.tournamentForm.phone.value;
			email = document.tournamentForm.email.value;
			alias = document.tournamentForm.alias.value;
			team = document.tournamentForm.team.value;
			amount = document.tournamentForm.amount.value;
			transid = document.getElementById("transaction_id").value;
			
			var params = 'first=' + first + '&last=' + last + '&address=' + address + '&city=' + city + '&state=' + state + '&zip=' + zip + '&phone=' + phone + '&email=' + email + '&year=' + year + '&alias=' + alias + '&team=' + team + '&transid=' + transid + '&amount=' + amount + '&tournamentid=' + tournamentid;
		
			action = "action=tournament&do=purchase";
			break;
	}
	
	var ajx = new ajax;
	ajx.open('POST', 'script/ajax.php?' + action, true);
	ajx.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajx.setRequestHeader("Content-length", params.length);
	ajx.setRequestHeader("Connection", "close");
	ajx.onreadystatechange = function() {
	   if(ajx.readyState == 4) {
			//alert(ajx.responseText);
		  	if(ajx.responseText == 'success') {
				switch(which) {
					case "exhibitSpace":
						document.exhibitForm.submit();
						break;
					case "tickets":
						document.ticketForm.submit();
						break;
					case "lan":
						document.lanForm.submit();
						break;
					case "tournament":
						document.tournamentForm.submit();
						break;
				}
			} else {
				alert("There was an error submitting your form. Please try again later or contact customer support at 801.204.6840");	
			}
		}
	}
	ajx.send(params);
	
}
