/**
* Copyright (C) 2009 by re-lounge GmbH, www.re-lounge.com
*/

var runningTimout=null;

function getSuggests(event){
	
	//Beim ersten Aufruf die Autocomplete-Box mit den Suggests erzeugen
	if($("#applicationSearchSuggests").attr("id")!="applicationSearchSuggests"){
		$("#applicationSearch").after('<select id="applicationSearchSuggests" size="5" onkeyup="if(event.keyCode==13) submitSuggest();" onchange="setSuggest(event);" style="position: absolute; display: none;"></select>');
		$(document).click(function(e){
			hideSuggests();
		});
	}
	
	if(event.keyCode == 40 || event.keyCode == 38){
		if($('#applicationSearchSuggests').is(':visible')){
			$("#applicationSearchSuggests").focus();
		}
	}else{	
		if(runningTimout!=null) {
			window.clearTimeout(runningTimout);
		}
		runningTimout = window.setTimeout("refreshSuggests()", 200);//please note: fadein/fadeout may take longer than the timeout
	}
}

function refreshSuggests(){
	hideSuggests();
		
	$.ajax({
		type: "POST",
		url: "fileadmin/anwendungssuche/suggest.php",
		data: "keyword="+$("#applicationSearch").val()+"&languageLimit="+$("#languageLimit").val(),
		success: function(msg){
			if(msg.length>0){
				showSuggests(msg);
			}
		}
	});
}

function showSuggests(content){
	var searchSuggestsObj =$("#applicationSearchSuggests");
	
	searchSuggestsObj.html(content);
	searchSuggestsObj.fadeIn("normal");
	
	var applicationSearchObj = $("#applicationSearch");
	var applicationSearchObjOffset = applicationSearchObj.offset();
	
	searchSuggestsObj.css("left",applicationSearchObjOffset.left);
	searchSuggestsObj.css("top",applicationSearchObjOffset.top+25);
}

function submitSuggest(){
	hideSuggests();
	$("#applicationSearch").focus();
	$("#applicationSearch").parents("form").get(0).submit();
}

function hideSuggests(){
	$("#applicationSearchSuggests").hide();
	$("#applicationSearchSuggests").html("");//Sicherstellen, dass die Box leer ist
}

function setSuggest(event){
	$("#applicationSearch").val($("#applicationSearchSuggests").val());
}
