jQuery(document).ready(function() {
	
	// změna měny
	$('#mena').bind('change', function() {
		self.location.href = $('#mena').val();
	});
	
	// zobrazení kalendáře
	$("#vyhledavani_od, #vyhledavani_do").datepicker({
		changeMonth: true,
		changeYear: true,
		minDate: '+1',
		maxDate: '+11m',
		showAnim: 'slideDown',
		showButtonPanel: true,
		//gotoCurrent: true,
		onSelect: function(selectedDate, instance) {
			
			// nastavení koncového a maximálního data
			if ($(instance).attr("id") == "vyhledavani_od") {
				// přeformátování získaného datumu
				var vybranyDatum = $.datepicker.parseDate(
						instance.settings.dateFormat ||
						$.datepicker._defaults.dateFormat,
						selectedDate, instance.settings);
				
				// inkrementování datumu
				var d1=new Date(vybranyDatum);
				d1.setDate(d1.getDate() + 1);
				
				// po inkrementování má datum špatný formát, takže přeformátování
				var minDatum = d1.toDateString(); 
				minDatum = new Date( Date.parse( minDatum ) );
				
				// inkrementování datumu
				var d2=new Date(vybranyDatum);
				d2.setDate(d2.getDate() + 14);
				
				// po inkrementování má datum špatný formát, takže přeformátování
				var maxDatum = d2.toDateString(); 
				maxDatum = new Date( Date.parse( maxDatum ) );
				
				// Nastavení data, minimálního data a maximálního data
				$("#vyhledavani_do").datepicker("setDate", minDatum);
				$("#vyhledavani_do").datepicker("option", "minDate", minDatum );
				$("#vyhledavani_do").datepicker("option", "maxDate", maxDatum );
			}
		}
	});
	
	$("#vyhledavani_kalendar_od").bind("click", function() {
		$("#vyhledavani_od").datepicker("show");
	});
	
	$("#vyhledavani_kalendar_do").bind("click", function() {
		$("#vyhledavani_do").datepicker("show");
	});
	
	// odstranění datumů
	$("#vyhledat_bez_terminu").bind("click", function() {
		$("#vyhledavani_od").val("");
		$("#vyhledavani_do").val("");
		return false;
	});
	
	// Zobrazení rozšířeného vyhledávání
	jQuery("#rozsirene_vyhledavani").bind("click", function() {
		$("#form_vyhledavani").animate({width: 500}, 500, function() {
			preskrolovat();
			$("ul.polozky_rozsirene").slideDown("normal", function() {
				
			});
		});
		$("#rozsirene_vyhledavani").fadeOut("normal", function() {
			$("#zakladni_vyhledavani").fadeIn("normal");
		});
		return false;
	});
	
	// Zobrazení základního vyhledávání
	jQuery("#zakladni_vyhledavani").bind("click", function() {
		$("ul.polozky_rozsirene").slideUp("normal", function() {
			preskrolovat();
			$("#form_vyhledavani").animate({width: 330}, 500);
		});
		$("#zakladni_vyhledavani").fadeOut("normal", function() {
			$("#rozsirene_vyhledavani").fadeIn("normal");
		});
		
		return false;
	});
	
	// ------- TYP UBYTOVANI ------------------------------------------------------------
	// označení/odznačení všech položek v typu ubytování
	$("#v_typ_vse").bind("click", function() {
		if ($("#v_typ_vse").attr("checked")) {	// zatrhlo se právě políčko?
			$(".v_typ_ubytovani").removeAttr("checked");
		}
	});
	
	// odznačení políčka vše, při jeho zatržení, ale zároveň odtržení některé položky
	$(".v_typ_ubytovani").click(function() {
		var checked = $(this).attr("checked");
		if (checked) {
			if ($("#v_typ_vse").attr("checked")) {
				$("#v_typ_vse").removeAttr("checked");
			}
		}
	});
	
	// ------- CENY ---------------------------------------------------------------------
	// označení/odznačení všech položek v typu ubytování
	$("#v_cena_vse").bind("click", function() {
		if ($("#v_cena_vse").attr("checked")) {	// zatrhlo se právě políčko?
			$(".v_cena").removeAttr("checked");
		}
	});
	
	// odznačení políčka vše, při jeho zatržení, ale zároveň odtržení některé položky
	$(".v_cena").click(function() {
		var checked = $(this).attr("checked");
		if (checked) {
			if ($("#v_cena_vse").attr("checked")) {
				$("#v_cena_vse").removeAttr("checked");
			}
		}
	});
	
	// ------- ÚPRAVA ŘAZENÍ ------------------------------------------------------------
	$('#filtr_razeni').bind('change', function() {
		var url = "/vyhledat.php?umisteni="+$('#umisteni').val();
		
		var parametryJsou = false;
		if ($('#parametr_url').val()) {
			if ($('#parametr_url').val() != "") {
				parametryJsou = true;
				url += "&"+$('#parametr_url').val().substr(1);
			}
		}
		
		// odstranit aktuální řazení
		if (url.search("v_razeni") > -1) {
			var tmp_pred = url.substr(0, url.search("v_razeni")-1);
			var tmp_zbytek1 = url.substr(url.search("v_razeni"));
			
			var tmp_za = "";
			if (tmp_zbytek1.search("&") > -1) {
				tmp_za = tmp_zbytek1.substr(tmp_zbytek1.search("&"));
			}
			
			//alert(tmp_pred + "\n" + tmp_za); return false;
			url = tmp_pred + tmp_za;
		}
		
		var zvoleneRazeni = $("#filtr_razeni").val();
		if (zvoleneRazeni ) {
			url += "&v_razeni="+zvoleneRazeni;
		}
		//alert(url);
		
		self.location.href = url;
	});
	
	// našeptávač
	$.widget( "custom.catcomplete", $.ui.autocomplete, {
		_renderMenu: function( ul, items ) {
			var self = this,
				currentCategory = "";
			$.each( items, function( index, item ) {
				if ( item.category != currentCategory ) {
					ul.append( "<li class='ui-autocomplete-category'>" + item.category + "</li>" );
					currentCategory = item.category;
				}
				self._renderItem( ul, item );
			});
		}
	});

	$( "#vyhledavani_text" ).catcomplete({
		source: "vyhledat.php",
		minLength: 3,
		select: function( event, ui ) {
			if (ui.item) {
				var url = ui.item.id
				//$("#url_presmerovat").val(url);
				self.location.href = url;
			}
		}
	})/*.bind("keyup", function() {
		var hodnota = $(this).val();
		if (hodnota == "") {
			$("#url_presmerovat").val("");
		}
	});*/
});

function preskrolovat() {
	var kam = "";
	if ($("#vyhledavani_text").length) {
		kam = $("#vyhledavani_text").offset().top - 5;
	}
	else {
		kam = $("#vyhledavani_od").offset().top - 5;
	}
	$('html,body').animate({scrollTop: kam}, 250);
}
