/* ---------------------------- */
/* XMLHTTPRequest Enable 		*/
/* ---------------------------- */
function createObject() {
	var request_type;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer"){
	request_type = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
		request_type = new XMLHttpRequest();
	}
		return request_type;
}

var http = createObject();
var x=-1;

/* -------------------------- */
/* SEARCH					 */
/* -------------------------- */
function autosuggest() {
q = document.getElementById('search-q').value;
// Set te random number to add to URL request
  if(q.length > 2){
	nocache = Math.random();
	http.open('get', 'search.cfm?q='+q+'&nocache = '+nocache);
	http.onreadystatechange = autosuggestReply;
	http.send(null);
  } else {
  	document.getElementById('results').style.display="none";
  }
}
function selectResult(event) {
	if(window.attachEvent && (event.keyCode == 40 || event.keyCode == 38)) {
	SelectNext(event);
	document.getElementById('results').attachEvent("onkeydown",SelectNext);
	} else {
	if(event.keyCode == 40 && document.getElementById('results').style.display == "block") {
	var child = document.getElementById('results').getElementsByTagName("a");
	for(i=0;i<child.length;i++)
	{
	x=i+1;
	if(window.attachEvent) {
		//child[i].onkeydown = function(event,x) {nextResult(event,x);} 
		child[i].attachEvent("onkeydown",IEnextResult);
	} else {
		child[i].setAttribute("onkeydown","nextResult(event,"+x+");");
		}
	}
	child[0].focus();
	child[0].style.backgroundColor="#eee";
	return;
	} else {
	return;
	}
	}
}
function SelectNext(event) {
var child = document.getElementById('results').getElementsByTagName("a");
for(i=0;i<child.length;i++) { child[i].style.backgroundColor="#fff";}
	if(event.keyCode == 13 && x > -1) {
	window.location = child[x].href;
        } else if(event.keyCode == 40 && x+1 < child.length) {
	x = x+1;
	}
        else if(event.keyCode == 38 && x > 0){
	x = x-1; 
	   
	} 
	child[x].focus();
	child[x].style.backgroundColor="#eee";
        return false;
}
function nextResult(event,x) {

	if(event.keyCode == 40) {
	var child = document.getElementById('results').getElementsByTagName("a");
	if (child[x]) {
	var y=x-1;
		child[x].focus();
		child[x].style.backgroundColor="#eee";
		child[y].style.backgroundColor="#fff";
	} else {
		return;
		}
	} else if(event.keyCode == 38 && x > 1) {
	var child = document.getElementById('results').getElementsByTagName("a");
		var y = x-2;
	        if (child[y]) {
	                child[y].focus();
			child[x-1].style.backgroundColor="#fff";
			child[y].style.backgroundColor="#eee";
		        } else {
	                return;
	 }
	 
	 } else {
	 return;
	 }

}
function autosuggestReply() {
if(http.readyState == 4){
	var response = http.responseText;
	if(response.indexOf("a") != -1){
		document.getElementById('results').innerHTML=response;
		document.getElementById('results').style.display="block";
	} else {
		document.getElementById('results').style.display="none";
	}
}
}

