$(document).ready(function(){
	
	// Load Form Content layout from NEST editable page
	var formContent;

	$.ajax({
		url: "/default.asp?docId=33025",
		cache: false,
		success: function(html){
			formContent = $(html).find('#testDriveOverlay_content');
			
			///////////////////////////////////////
			// SETUP TEST DRIVE FORM LAUNCH CODE //
			///////////////////////////////////////
			
			// Add Form Launch Links
			$("a.testDriveLink").click(function(event){
				event.preventDefault();
				
				// Add opacity overlay
				var overlay = $('<div id="opacity_overlay"></div>');
				// Set overlay width and height based on current browser dimensions
				var cssObj = {
					width: $(document).width(),
					height: $(document).height(),
					backgroundColor: "rgb(0, 0, 0)",
					opacity:0
				};
				$(overlay).css(cssObj);
				$("body").append(overlay);
				
			// Fade overlay in
			// Once its faded in add test drive form
			$(overlay).animate({opacity: 0.7}, 200, "", function(){
				var testDriveForm = $('<div id="testDriveOverlay"><div id="testDriveOverlay_background"><div id="testDriveOverlay_close"></div><div id="testDriveOverlay_content">' + $(formContent).html() + '</div></div></div>');
				var formCssObj = {
					opacity:0,
					top: $(document).scrollTop() + 75
				};
				$(testDriveForm).css(formCssObj);
				$('body').append(testDriveForm);
				
				// Position disclaimer at bottom of form
				
				
				// Fade Test Drive Form in
				$(testDriveForm).animate({opacity: 1}, 200, "", function(){
				
					var formPostOptions = {
						success:formPostSuccess,
						beforeSubmit:validate
					};
					$('#testDriveOverlay_form').ajaxForm(formPostOptions); 				
				
					// Add close button functionality
					$("#testDriveOverlay_close").click(function(event){
						$("#opacity_overlay, #testDriveOverlay").fadeOut("fast", function(){
							$("#opacity_overlay, #testDriveOverlay").remove();
						});
					});
					
				});
		
			});
				
			});
			
			//////////////////////////////
			
		}
	});

});


// Form Post handler
function formPostSuccess() {
	$('#testDriveOverlay_intro, #testDriveOverlay_form').hide();
	$('#testDriveOverlay_thankyou').show();
}


// Form Validation handler
function validate(formData, jqForm, options) {
		
	var invalid = 0;
	var form = jqForm[0];
	var invalidFields = $(form).find(".form_req input[value='']");
	var validFields = $(form).find(".form_req input[value!='']");
	$(invalidFields).each(function(){
		invalid++;
		$(this).addClass("error");
	});
	$(validFields).each(function(){
		$(this).removeClass("error");
	});
	
	if(invalid == 0){
		$('input#submit').attr('disabled', 'disabled').fadeTo("fast", 0.5);
		$('div#errormessage').hide();
	} else {
		$('div#errormessage').show();
	}

	return invalid == 0;

}





