// JavaScript Document

var datavar;
var noval = false;

$(document).ready( function() {
	
	$("#btnDirectResults").click(function() {	
		
		if($("#total_results").html() == "0")
		{
			alert("There are 0 results for your current selection");
		}
		else
		{
			noval = true;
			
			var tempaction = $("#frmSelector").attr("action");
			
			$("#frmSelector").attr("action", "/spectrophotometer-results/");
			$("#frmSelector").attr("target", "_blank");
			$("#btnSubmit").trigger("click");
			
			$("#frmSelector").attr("action", tempaction);
			$("#frmSelector").attr("target", "_top");
		}
		
		return false;									  
	});
	
	UpdateTotal();
	
	// validation for each step
	switch($("#step").val()) {
		case "1":
		
		
			
			$("#btnSubmit").click(function() {
					
					if($("#v_q1").val() == "" && !noval) {
						alert("You must make a selection");	
						return false;
					}
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
			});
			break;
			
		case "2":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					/*if($("#v_q2").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:checkbox:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "3":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q3").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "4":
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q4").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "5":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q5").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "6":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q6").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "7":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q7").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "8":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q8").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
			
		case "9":
		
			$("#btnSubmit").click(function() {
					
					if($("#total_results").html() == "0")
					{
						alert("There are 0 results for your current selection");
						return false;
					}
					
					/*if($("#v_q9").val() == "" && !noval) {
						
						var selectmade = false;
						
						$("input:radio:checked").each(function() {
							selectmade = true;
						});					
						
						if(!selectmade) {
							alert("You must make a selection. If you want to skip this section, select No Preference.");	
							return false;
						}
					}*/
			});
			break;
	}
	
	$("input[type=radio]").click(function() {
		
			var el_name = $(this)[0].name;
			var el_value = $(this).val();
			
			$("#v_" + el_name).val(el_value);
			
			UpdateTotal();
	}); 
	
	$("input[type=checkbox]").click(function() {
		
			var this_name = $(this)[0].name;
			$("#v_" + this_name).val('');
			
			$("input:checkbox:checked").each(function() {
				
				var el_name = $(this)[0].name;
				var el_value = $(this).val();
				var curr_value = $("#v_" + el_name).val();
				
				$("#v_" + el_name).val(curr_value + '@@' + el_value);				
				
			});	
			
			
			UpdateTotal();
	}); 
	
	// Preselect any options 
	var step = $("#step").val();
	var backstep = step-1;
	
	var step_data;
	
	switch(step) {
		case "1":
			step_data = $("#v_q1").val();	
			break;
		case "2":
			step_data = $("#v_q2").val();
			break;
		case "3":
			step_data = $("#v_q3").val();
			break;
		case "4":	
			step_data = $("#v_q4").val();
			break;
		case "5":
			step_data = $("#v_q5").val();
			break;
		case "6":
			step_data = $("#v_q6").val();
			break;
		case "7":
			step_data = $("#v_q7").val();
			break;
		case "8":
			step_data = $("#v_q8").val();
			break;
		case "9":
			step_data = $("#v_q9").val();
			break;
	}
	
	if(step_data != '') {
		var step_data_arr = step_data.split("@@");
		var i = 0;
		
		while(i<step_data_arr.length) {
			
			// remove dd_id and partition characters
			var data_segment = step_data_arr[i];
			
			if(data_segment !="") {
				
				// loop through each checkboc and radiobox and preselect if value exists.
				$("input[type=radio]").each(function() {
					
					if($(this).val().indexOf(data_segment) != -1 && $(this).val() != '') {
						$(this).attr("checked", "checked");
					}
					
				});
				
				$("input[type=checkbox]").each(function() {

					if($(this).val().indexOf(data_segment) != -1 && $(this).val() != '') {
						$(this).attr("checked", "checked");
					}
					
				});
			}
			
			i +=1;	
		}
	}
	
	
	// Back button changes action url and striggers form submit
	$("#btnPreviousSubmit").click(function() {
		
		
		$("input:checkbox:checked").each(function() {
			$(this).attr("checked", "");
			var this_name = $(this)[0].name;
			$("#v_" + this_name).val('');
		});
		$("input:radio:checked").each(function() {
			$(this).attr("checked", "");
			var el_name = $(this)[0].name;
			$("#v_" + el_name).val('');
		});
		
		$("#total_results").html("--");
			
		
		$("#frmSelector").attr("action", "/select-a-spectrophotometer/?s=" + backstep.toString());		
		$("#btnSubmit").trigger("click");
	});
	

});



function BuildDatavar() {
	
	datavar = "";
	
	// Top level category
	datavar += "&c_top=" + $("#c_top").val();
	
	// Data definitions
	datavar += "&q1=" + $("#v_q1").val();
	datavar += "&q2=" + $("#v_q2").val();
	datavar += "&q3=" + $("#v_q3").val();
	datavar += "&q4=" + $("#v_q4").val();
	datavar += "&q5=" + $("#v_q5").val();
	datavar += "&q6=" + $("#v_q6").val();
	datavar += "&q7=" + $("#v_q7").val();
	datavar += "&q8=" + $("#v_q8").val();
	datavar += "&q9=" + $("#v_q9").val();
	
}

function UpdateTotal() {
	
	// Initiate progress loading GIF
	$("#progress_loader").show();
	
	// Construct datavars for ajax
	BuildDatavar();
	
	// Calculate total results
	$.ajax({
		   type: "POST",
		   url: "/__ajax/_selector.asp",
		   data: "action=TOTAL" + encodeURI(datavar),
		   async: false,
		   success: function(msg){
			   $("#total_results").html(msg);
			   $("#progress_loader").hide();
		   }
	});
	
}