// JavaScript Document
var glossary_data = new Object();
var hold_menu = false;
var user_location = "0";
$(document).ready(function(){
	$("#glossary_search_field input").keyup(function(){
												buildSearchList(this.value);
												});
	$("#glossary_drop").hide();
	//$("#glossary_drop").corners("transparent 5px");
	
	//$("#glossary_box").corners("transparent top 5px");
	$("#glossary_box").hover(function(){
									  var gd_off = $("#glossary_box").offset();
									$("#glossary_drop").css({"top":gd_off.top+30,"left":gd_off.left-10});
									  $(this).addClass("glossary_box_on");
									  $("#glossary_drop").show().dropShadow({"left":0,"top":3,"blur":3}).redrawShadow();
									  $("#glossary_drop").hover(function(){
																		 hold_menu = true;
																		 },function(){
																					 hold_menu = false;
																					 setTimeout("hideGlossary()",50);
																					 																		  });
									  
									  }, function(){ var timeHideGlossary = setTimeout("hideGlossary()",50); });
	
	$("#glossary_search_footer").append("<em>For detailed information see our</em><br/><a href='https://www.origoeducation.com/the-origo-handbook-of-mathematics-education/'>Handbook of Mathematics Education</a>");				 	
	getLocation();
});
function hideGlossary(){
	if(!hold_menu){
		$("#glossary_box").removeClass("glossary_box_on");
		$("#glossary_drop").hide().removeShadow();
		hold_menu = false;
	}
	
}

function getLocation(){
	$.post("http://www.origoeducation.com/home/getSessionLocation/", function(data){
																				 	user_location = data.substr(0,2);
																					glossarySearch();
																				 },"text");
}
function glossarySearch(){
	
	$.post("http://www.origoeducation.com/home/glossarySearch/", function(data){
												  	
													glossary_data = JSON.parse(data);
													//buildSearchList("a");
													},"json");
}
function buildSearchList(search_str){
	if(search_str != undefined && search_str.length > 0){
	var result_html = "";
	var len = search_str.length
	var count = 0;
	for (var i=0;i<glossary_data.length;i++){
		//if(i==0) alert(glossary_data[i].location+","+user_location)
		if(glossary_data[i].name.slice(0,len).toLowerCase() == search_str.toLowerCase() && (glossary_data[i].location == user_location || glossary_data[i].location == "XX")){
			result_html+="<div id='glossary_term_holder'><div class='glossary_term_header'>"+glossary_data[i].name+"</div><div class='glossary_term_body'>"+glossary_data[i].description+"</div></div>";
			count++;
		}
		
	}
	if(count==0) result_html = "<div id='glossary_term_holder'><div align='center'><em>No results found</em></div></div>";
	$("#glossary_search_results").empty().append(result_html)
	
	$(".glossary_term_body").hide();
	$(".glossary_term_body:first").show();
	$("#glossary_drop").redrawShadow();
	$(".glossary_term_header").hover(function(){
											  $(this).next().show();
											  $("#glossary_drop").redrawShadow();
											  },
									function(){
											$(this).next().hide();
											$("#glossary_drop").redrawShadow();
									});
	}
}