/*===========================================
	Express Request V2
	Dependent JS
	(c) Chem-Dry
	Author: Modern Blue
============================================*/

$(function(){
	
	//GA Tracking each form element
	$(':input').blur(function () {
		var finput = $(this);
		if(!finput.hasClass('tracked') && finput.val().length > 0) {
			try
			{
				_gaq.push(['_trackEvent', 'ERv2', finput.attr('id'), finput.attr('id')]);
			}
			catch (err) {}
			if(finput.attr('id') != "firstname") {
				finput.addClass("tracked");
			}
		}
    });
	
	//GA track select
	$('select').change(function () {
		var finput = $(this);
		if(!finput.hasClass('tracked') && finput.val().length > 0) {
			try
			{
				_gaq.push(['_trackEvent', 'ERv2', finput.attr('id'), finput.attr('id')]);
			}
			catch (err) {}
		}
    });		
	
	//track started form
	$('form #firstname').blur(function() {
		var finput = $(this);
		if(!finput.hasClass('tracked') && finput.val().length > 0) {
			try
			{
				_gaq.push(
					['_trackEvent', 'ERv2', 'Started', 'Started Form'],
					['_trackPageview', "/ERv2/Started"]
				);
			}
			catch (err) {}
			$(this).addClass("tracked");
		}
	});
	
		
	//track form submission
	$('form').submit(function () {
		var tlink = $(this);
		if(!tlink.hasClass("tsubmit")) {
			try
			{
				//form submit
				_gaq.push(
					['_trackEvent', 'ERv2', 'Submit', 'Submitted Form'],
					['_trackPageview', "/ERv2/Submitted"]
				);
			}
			catch (err) {}
			tlink.addClass("tsubmit");	
		} 		
	
		return checkRequired();
	
	});	

});

//function to make sure all fields are filled in
function checkRequired() {
	error = 0;
	$("form :input").each(function() {
		if(!$(this).hasClass("nreq")) {
			if($(this).val() == "") {
				$(this).addClass("hlight");
				error = 1;
			} else {
				$(this).removeClass("hlight");	
			}
		}
	});
	
	if(error < 1) {
		$("form select").each(function() {
			if(!$(this).hasClass("nreq")) {
				if($(this).val() == "") {
					$(this).addClass("hlight");
					error = 1;
				} else {
					$(this).removeClass("hlight");	
				}
			}
		});
	}
	
	//make sure if they selected other they filled in the spot
	var other = $("#other");
	if($(other).hasClass("showing")) {
		if($(other).val() == "") {
			$(other).addClass("hlight");
			error = 1;
		}
	}
	
	if(error > 0) {
		alert("Please fill in all required fields");		
		return false;
	} else {
		return true;	
	}
}

//function to show the other box depending on selection
function checkOther(obj) {
	if( $(obj).val() == "Other...") {
		$("#otherOpt").show();
		$("#otherOpt #other").addClass("showing");
	} else {
		$("#otherOpt").hide();	
		$("#otherOpt #other").removeClass("showing");
	}
}
