function zaznaczona_podpowiedz(podpowiedziDiv) {
	zazn = $('ul li.hover', podpowiedziDiv);
	if(zazn.length > 0)
		return parseInt($(zazn[0]).attr('ref'));
	return 0;
}

function zaznacz_podpowiedz(podpowiedziDiv, podp) {
	$('ul li.hover', podpowiedziDiv).removeClass('hover');
	$('ul li[ref=' + podp + ']', podpowiedziDiv).addClass('hover');
}

function liczba_podpowiedz(podpowiedziDiv) {
	var ostatni = $('ul li:last', podpowiedziDiv);
	if(ostatni.length > 0)
		return parseInt($(ostatni[0]).attr('ref'));
	return 0;
}


$.fn.podpowiedzi = function() {
	$('input', this).bind('keydown', function(e) {
		var key = e.keyCode || e.which;
		var parent = $(this).parent();
		//w dol
		if(key == 40 || key == 34) {
			var podp = zaznaczona_podpowiedz(parent);
			if(key == 40)
				podp += 1;
			else
				podp += 12;
			if(podp > liczba_podpowiedz(parent))
				podp = 0;
			zaznacz_podpowiedz(parent, podp);
			$($('ul', parent)[0]).scrollTo($('li[ref=' + podp + ']', parent));
			e.stopPropagation();
		// gore
		} else if(key == 38 || key == 33) {
			var podp = zaznaczona_podpowiedz($(this).parent());
			if(key == 38)
				podp -= 1;
			else
				podp -= 12;
			
			if(podp < 0)
				podp = liczba_podpowiedz(parent);
			zaznacz_podpowiedz(parent, podp);
			$($('ul', parent)[0]).scrollTo($('li[ref=' + podp + ']', parent));
			e.stopPropagation();
		//ESC
		} else if(key == 27) {
			$('ul', parent).html('').hide();
		//ENTER	
		} else if(key == 13) {
			var podp = zaznaczona_podpowiedz(parent);
			if(podp > 0)
				$('input', parent).val($('li[ref=' + podp + ']', parent).html());
			else
				$('input', parent).val();
			$($('ul', parent)[0]).hide();
			refresh = $($('ul', parent)[0]).attr('id') == 'listaPodpowiedziHowTo' ? 0 : 1;
			if(podp >= 0)
				xajax_call('szukaj', 'ustaw_ulice_dostawy', $('input', parent).val(), refresh);
		}
	});
	
	$('input', this).bind('keyup', function(e){
		var key = e.keyCode || e.which;;
		if( key != 40 && key != 38 && key != 27 && key != 13 && key != 33 && key != 34) {
			var ulId = $('ul', $(this).parent()).attr('id');
			xajax_call('szukaj', 'podpowiedzi_sweet', $(this).val(), ulId);
		}
	});
	
	$('li', this).live('click', function(){
		$('input', $($(this).parent()).parent()).val($(this).html());
		$(this).parent().hide();
		refresh = $(this).parent().attr('id') == 'listaPodpowiedziHowTo' ? 0 : 1;
		
		if($(this).attr('ref') >= 0)
			xajax_call('szukaj', 'ustaw_ulice_dostawy', $(this).html(), refresh);
	});
	
	$('li', this).live('mouseover', function(){
		zaznacz_podpowiedz($(this).parent().parent(), $(this).attr('ref'))
	});
	
	$('li', this).live('mouseout', function(){
		zaznacz_podpowiedz($(this).parent().parent(), -1)
	});
}


$(document).ready(function() {
	$('.podpowiedzi').podpowiedzi();
	$('#ileChceszWydacHowTo').change(function() {
		xajax_call('szukaj', 'minzam', $(this).val(), 0);
	});
	$('#menuMinZamowienia').change(function() {
		xajax_call('szukaj', 'minzam', $(this).val(), 1);
	});
	
	$('#menuCzynneRest input, #menuCzynneRest label').click(function() {
		xajax_call('szukaj', 'pokaz_czynne', $('#menuCzynneRest input').hasClass('ckb1'), 1);
	});
	
	$('#czynneRestauracjeHowTo, #czynneRestHowTo label').click(function() {
		xajax_call('szukaj', 'pokaz_czynne', isChecked($('#czynneRestauracjeHowTo')), 0);
	});
	
	$('#platnoscKarta').click(function() {
		xajax_call('szukaj', 'platnosc_karta', $(this).hasClass('header-checkbox1'), 1);
	});
});


function komunikat_ajax(komunikat) {
	$('#komunikatAjax').html(komunikat);
	$('#komunikatAjax').slideDown();
	setTimeout("$('#komunikatAjax').hide()", 3000);
}

