﻿jQuery(document).ready(function(){
  	
  	var OfficeCount = {num:0};
  	var PracticeCount = {num:0};
  	var AreaCount = {num:0};
  	
  	var countArr = new Array(5);
	countArr[0] = "Office";
	countArr[1] = "Practice";
	countArr[2] = "Area";
	
	//if there is a query then update the drop down titles
	var qs = new Querystring();
	if(qs.contains("query")){
		jQuery(".ListDD").each(function(){
			var curID = jQuery(this).attr("id");
			
			var title = "";
			for(var i = 0; i < countArr.length; i++){
				if(curID.indexOf(countArr[i]) != -1){
					var strTitle = "";
					jQuery("#" + curID + " input").each(function(){
						if(jQuery(this).attr("checked")){
							strTitle = jQuery(this).next("label").find(".display").text();
							eval(countArr[i] + "Count").num++;
						}
					});
					
					if(eval(countArr[i] + "Count").num > 1){
						jQuery(this).find(".TitleText").text(eval(countArr[i] + "Count").num + " selected");
					}
					else if(eval(countArr[i] + "Count").num == 1) {
						jQuery(this).find(".TitleText").text(strTitle);
					}
				}
			}
		});
	}
	
	if (navigator.userAgent.toLowerCase().indexOf("msie 6.0") != -1){ 
		//loop through drop down items
		jQuery(".CheckList td").hover(function(){
			jQuery(this).css("background-color", "#F9EC00");
		}, function(){
			jQuery(this).css("background-color", "#Ffffff");	
		});
	}
	
	//loop through drop down items
	jQuery(".FirstInList").click(function(){
		if(jQuery(this).next().css("display") == "none"){
			//close all
			jQuery(".CheckList").each(function(){
				jQuery(this).hide();//.slideUp("2000");	
			});
			//open
			jQuery(this).next().show();//.slideDown("2000");
			jQuery(this).next().find(".CheckListWrapper").jScrollPane();
		}
		else if(jQuery(this).next().css("display") == "block"){
			//close
			jQuery(this).next().hide();//.slideUp("2000");	
		}
	});
	
	//loop through drop down items
	jQuery(".ListDD").hover(function(){}, function(){
		jQuery(".CheckList").hide();//.slideUp("2000");	
	});
	
	//loop through drop down items
	jQuery(".CheckList input").click(function(){
		var itemID = jQuery(this).attr("id");
		
		for(var i = 0; i < countArr.length; i++){
			if(itemID.indexOf(countArr[i]) > -1){
				if(jQuery(this).attr("checked")){
					eval(countArr[i] + "Count").num++;
				}
				else {
					eval(countArr[i] + "Count").num--;
				}
				var curParent = jQuery(this).parent();
				var x = 0;
				while(x <= 5){
					if(jQuery(curParent).attr("class") == "CheckList"){
						break;
					}
					curParent = jQuery(curParent).parent();
					x++;
				}
				if(eval(countArr[i] + "Count").num == 0){
					jQuery(curParent).prev(".FirstInList").children(".TitleText").text("All");
				}
				else {
					var plural = "";
					if(eval(countArr[i] + "Count").num > 1){
						plural = "s";
					}
					//jQuery(curParent).prev(".FirstInList").children(".TitleText").text(eval(countArr[i] + "Count").num + " " + countArr[i] + plural + " selected");
					if(eval(countArr[i] + "Count").num > 1){
						jQuery(curParent).prev(".FirstInList").children(".TitleText").text(eval(countArr[i] + "Count").num + " selected");
					}
					else {
						jQuery(this).parent().parent().parent().find("tr td input").each(function(){
							if(jQuery(this).attr("checked")){
								jQuery(curParent).prev(".FirstInList").children(".TitleText").text(jQuery(this).next("label").find(".display").text());
							}
						});
					}
				}
			}
		}
		
	});
	
	jQuery(".ajaxSubmit").click(function(){
		HandleSearch();
		return false;
	});
		
	function HandleSearch() {
	
		var offices = "";
		var practices = "";
		var areas = "";
		
		jQuery(".ListDD").each(function(){
			var curID = jQuery(this).attr("id");
			
			var strList = "";
			jQuery("#" + curID + " input").each(function(){
				if(jQuery(this).attr("checked")){
					if(strList.length > 0){
						strList += "::";
					}
					strList += jQuery(this).next("label").find(".value").text();
				}
			});
			
			if(curID.indexOf("Practice") != -1){
				practices = strList;
			}
			else if(curID.indexOf("Office") != -1){
				offices = strList;
			}
			else if(curID.indexOf("Area") != -1){
				areas = strList;
			}
		});
		
		jQuery.post("/BallardSpahr/layouts/AjaxSearch.aspx",{
		   conPractices: practices,
		   conOffices: offices,
		   conAreas: areas
		}, 
		function(xml) {
			window.location.search = "?query=true";
		});			
	}
	
	jQuery(".clearForm").click(function(){
		jQuery(".SearchFilters input").each(function(){
			jQuery(this).attr("checked", false);
		});
		
		PracticeCount.num = 0;
  		OfficeCount.num = 0;
  		AreaCount.num = 0;
  		
  		jQuery(".TitleText").each(function(){
			jQuery(this).text("All");
		});
		
		return false;
	});
});

