var seachAct = false;
var seachShow = false;
var count = 0;
var t;
var t1;
var totalResult = 0;
;(function($) {	
	$.fn.searchInput = function(p){
		p = $.extend({
			totalResult: 0
		}, p);
		
		$(this).keyup(function(){
			clearTimeout(t1);
			value = $(this).val();
			if(value.length>0){
				clearTimeout(t);
				t = setTimeout('$.lookup("' + $(this).val() + '")',500);
			}
		});
		
		$(this).blur(function() {
			clearTimeout(t1);
			t1 = setTimeout("$('#search_result').fadeOut()",2000);
		});

		$(this).click(function(e) {
			clearTimeout(t1);
			value = $(this).val();
			if(value.length>0){
				clearTimeout(t);
				t = setTimeout('$.lookup("' + $(this).val() + '")',500)
			}
		})
		
		$(this).hover(function(){
				clearTimeout(t1);
				value = $(this).val();
				if(value.length>0){
					clearTimeout(t);
					t = setTimeout('$.lookup("' + $(this).val() + '")',500)
				}
			},
			function(){
		});
		
		$('#search_result').hover(function(){
				clearTimeout(t1);
			},
			function(){
				clearTimeout(t1);
				t1 = setTimeout("$('#search_result').fadeOut()",2000)
		});
		
		$.lookup = function (inputString) {
			if(inputString.length < 2) {
				$('#search_result').fadeOut(); // Hide the suggestions box
			} else {
				$.ajax({
					type: "POST",
					url: "/action/search_result",
					data: "queryString=" + inputString,
					async: true,
					dataType: "json",
					cache: false,
					success: function(data){
						$('#search_result dd').remove();
						searchShow = false;
						p.totalResult = 0;
						if(data.libri.numRec>0){
							var html = '';
							$('#search_result dt.librisearch').show();
							$('span','#search_result dt.librisearch').empty();
							$.each(data.libri.result, function(i,row) {
								html += '<dd><a href="' + row.link +'">' + row.titolo + '</a></dd>';
							});
							p.totalResult += data.libri.numRec;
							if((data.libri.numRec-3)>0) {
								risultati = (data.libri.numRec-3);
								$('span','#search_result dt.librisearch').html(' (<a href="/ricerca/categoria/libri/cerca/' + inputString.replace(/ /g, "+") + '">altri ' + risultati + ' risultati</a>)');
							}
							$('#search_result dt.librisearch').after(html);
							searchShow = true;
						} else {
							$('#search_result dt.librisearch').hide();
						}
						if(data.dvd.numRec>0){
							var html = '';
							$('#search_result dt.dvdsearch').show();
							$('span','#search_result dt.dvdsearch').empty();
							$.each(data.dvd.result, function(i,row) {
								html += '<dd><a href="' + row.link +'">' + row.titolo + '</a></dd>';
							});
							p.totalResult += data.dvd.numRec;
							if((data.dvd.numRec-3)>0) {
								risultati = (data.dvd.numRec-3);
								$('span','#search_result dt.dvdsearch').html(' (<a href="/ricerca/categoria/dvd/cerca/' + inputString.replace(/ /g, "+") + '">altri ' + risultati + ' risultati</a>)');
							}
							$('#search_result dt.dvdsearch').after(html);
							searchShow = true;
						} else {
							$('#search_result dt.dvdsearch').hide();
						}
						if(data.speciali.numRec>0){
							var html = '';
							$('#search_result dt.specialisearch').show();
							$('span','#search_result dt.specialisearch').empty();
							$.each(data.speciali.result, function(i,row) {
								html += '<dd><a href="' + row.link +'">' + row.titolo + '</a></dd>';
							});
							p.totalResult += data.speciali.numRec;
							if((data.speciali.numRec-3)>0) { 
								risultati = (data.speciali.numRec-3);
								$('span','#search_result dt.specialisearch').html(' (<a href="/ricerca/categoria/speciali/cerca/' + inputString.replace(/ /g, "+") + '">altri ' + risultati + ' risultati</a>)');
							}
							$('#search_result dt.specialisearch').after(html);
							searchShow = true;
						} else {
							$('#search_result dt.specialisearch').hide();
						}
						if(data.abbonamenti.numRec>0){
							var html = '';
							$('#search_result dt.abbonamentisearch').show();
							$('span','#search_result dt.abbonamentisearch').empty();
							$.each(data.abbonamenti.result, function(i,row) {
								html += '<dd><a href="' + row.link +'">' + row.titolo + '</a></dd>';
							});
							p.totalResult += data.abbonamenti.numRec; 
							if((data.abbonamenti.numRec-3)>0) {
								risultati = (data.abbonamenti.numRec-3);
								$('span','#search_result dt.abbonamentisearch').html(' (<a href="/ricerca/categoria/abbonamenti/cerca/' + inputString.replace(/ /g, "+") + '">altri ' + risultati + ' risultati</a>)');
							}
							$('#search_result dt.abbonamentisearch').after(html);
							searchShow = true;
						} else {
							$('#search_result dt.abbonamentisearch').hide();
						}
						
						if(data.autori){
						}
						
						if(p.totalResult>0){
							$('#search_result dt.rissearch').html('<a href="/ricerca/categoria/tutti/cerca/' + inputString.replace(/ /g, "+") + '">Tutti i risultati (' + p.totalResult + ') </a>')
						} else {
							searchShow = true;
							$('#search_result dt.rissearch').html('Nessun risultato!');
						}
						if(searchShow) 
							$('#search_result').fadeIn();
						else
							$('#search_result').fadeOut();
					}
						
				});
			}
		}
		
	};
})(jQuery);

$(document).ready(function() {
	$('#searchForm').attr('autocomplete','off');
	$('#searchField').searchInput();
});