$(document).ready(function() {

	// Assign global variables
	var inputMapVar = $('input[name*="_r"]');
	$('#ajax-content-success').hide();

	$("#nav ul li a").click(function() {
		$('#ajax-content-success').hide();
		$('#ajax-content').show();
		$("#ajax-content").empty().append("<div id='loading'>Loading...</div>");
		$(".current").removeClass("current");
		$(this).addClass("current");
		$.ajax( {
			url: this.href,
			success: function(html) {
				$("#ajax-content").empty().append(html);
			}
		});
		return false;
	});

	$("#ajax-content").empty().append("<div id='loading'>Loading...</div>");
	$.ajax( {
		url: '/welcome.php',
		success: function(html) {
			$("#ajax-content").empty().append(html);
		}
	});

	$('#form1').submit(function() {
		var err = false;

		// Reset the previously highlighted form elements
		inputMapVar.each(function(index){
			$(this).prev().removeClass('missing');
		});

		// Perform form validation

		// validate required fields
		var str = "";
		inputMapVar.each(function(index) {
			if($(this).val() == null || $(this).val() == "" || $(this).val() == this.defaultValue) {
				$(this).prev().addClass('missing');
				tmpstr = $(this).prev().text()
				str += tmpstr.substring(0, tmpstr.length-1) + ", "
				err = true;
			}
		});
		if(err == true) {
			alert("Please complete the following required fields: " + str.substring(0, str.length-2));
		}

		// validate phone
		if(err == false) {
			if( /^\d{3}-\d{3}-\d{4}$/.test($('#phone').val())==false ) {
				alert("Malformed Phone Number. Please use the following format: ###-###-####");
				err = true;
			}
		}

		// validate email
		if(err == false) {
			if( $('#email').val() != '' ) {
				if( /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/.test($('#email').val()) == false ) {
					alert("Malformed Email Address.");
					err = true;
				}
			}
		}

		// validate date
		if(err == false) {
			if( /^\d{2}\/\d{2}\/\d{4}$/.test($('#date').val())==false ) {
				alert("Malformed Date. Please use the following format: mm/dd/yyyy");
				err = true;
			}
		}

		// Submit the form
		if(err == false) {
			$.post("/core/request.php", $('#form1').serialize(), function(data){
				$("#success-name").text(data)
				$("#ajax-content-success").show();
				$("#ajax-content").hide();
				$(":input").val('');
				$("#origin").val("desktop");
				$("#vehicle option:first-child").attr("selected","selected");
				$(".default").each(function() {
					$(this).val(this.defaultValue);
					$(this).css("color", "#888");
				});
			});
		}
			
	 	return false;
	});

	$('.default').css("color", "#888");
	$('.default').focus(function() {
		if($(this).val() == this.defaultValue) {
			$(this).val('');
			$(this).css("color", "#000");
		}
	}).blur(function() {
		if( $(this).val() == '') {
			$(this).val(this.defaultValue);
			$(this).css("color", "#888");
		}
	});

	return false;
});
