//ajaxsearch.js
//Suggestion lista subsearch.orgia varten
//(c)quirzo 2008

var xmlHttp;
var suggest_num = 0;
var nuolinappain;


function AlustaAjax(){
	try{
	  // Firefox, Opera 8.0+, Safari
	  xmlHttp=new XMLHttpRequest();
	}
	catch (e){
	  // Internet Explorer
	  try{
	    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	    }
	  catch (e){
	    try{
	      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
	      }
	    catch (e){
	      alert("Selaimesi ei tue AJAX -teknologiaa, suosittelemme päivittämään uudempaan.");
	      return false;
	    }
	  }
	}
	return xmlHttp;
}

function NaytaTulokset(str){
	xmlHttp = AlustaAjax()
	var url= SS_DOMAIN + "/ajaxsearch.php" + "?q=" + str
	xmlHttp.onreadystatechange = stateChanged;
	
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}

function stateChanged(){
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == "complete"){
		//Data saapunut
		document.getElementById("suggest_loota").innerHTML = xmlHttp.responseText;
		//Fixi Operalle, muuten heittää hieman
		if(window.opera){ document.getElementById("suggest_menu").style.width="374px"; document.getElementById("suggest_menu").style.marginLeft="7px"; }
	}
}

function ajaxHaku(element, e){
	//Jos ylänuoli, alanuoli tai enter
	if(e.keyCode == 40 || e.keyCode == 38 || e.keyCode == 13){
		NuoliSaato(e.keyCode);
	}else{
		//funktio millä näytetään
			var func = function() { NaytaTulokset(element.value); }
		//Ajastus
			if(element.zid){
				clearTimeout(element.zid);
			}
			element.zid = setTimeout(func, 500);
	}
}


function NuoliSaato(nappain){
	//40 = alanuoli
	if(nappain == 40){
		if(suggest_num < document.getElementById('suggestion_count').value){
			if(suggest_num != 0) document.getElementById("suggest_"+ (suggest_num-1)).style.background = '#D3D3D3';
			document.getElementById("suggest_"+ suggest_num).style.background = '#ececf0';
			document.getElementById('q').value = document.getElementById("suggest_"+ suggest_num + "_2").innerHTML;
			suggest_num = suggest_num+1;
		}
			
	}
	
	//38 ylänuoli
	if(nappain == 38){
		if(suggest_num > 0){
		suggest_num = suggest_num-1;
		document.getElementById("suggest_"+ (suggest_num-1)).style.background = '#ececf0';
		document.getElementById("suggest_"+ suggest_num).style.background = '#D3D3D3';
		document.getElementById('q').value = document.getElementById("suggest_"+ (suggest_num-1) + "_2").innerHTML;
		}
	}
	
	//13 enter
	if(nappain == 13){
		//ei mitään tällä hetkellä
	}
	
}

//SuggestHiiri : ajetaan kun hiiri on jonkun tuloksen päällä suggestion listassa.
function SuggestHiiri(num,over){
	if(suggest_num != 0) document.getElementById("suggest_" + (suggest_num-1)).style.background = '#D3D3D3';
	if(over){
		suggest_num = num;
		document.getElementById("suggest_" + num).style.background = '#ececf0';
	}else{
		document.getElementById("suggest_" + num).style.background = '#D3D3D3';
	}
}