/*
 * obsluha ajaxovych filtru
 */

$(document).ready(function() {
	updateFilter();
});

/* aktualizuje fomrulare filtru */
function updateFilter()
{
	/* skryt prvky, ktere se nemaji pri zapnutem js zobrzovat */
	$('.filtry-zbozi .nojs').hide();
	
	/* workaround - odstraneni struktury selectboxu */
	$('.selectBox-dropdown-menu').remove();

	/* vytvorit posuvnik filtru cen */
	$(".filtry-zbozi .slider .range").slider({
		min: parseInt($(".filtry-zbozi input[name=priceMin]").val()),
		max: parseInt($(".filtry-zbozi input[name=priceMax]").val()),
		step: parseInt($(".filtry-zbozi input[name=priceStep]").val()),
		range: true,
		animate: true,
		values: [
			parseInt($(".filtry-zbozi input[name=priceFrom]").val()),
			parseInt($(".filtry-zbozi input[name=priceTo]").val())
		],
		slide: function(event, ui) {
			$(".filtry-zbozi input[name=priceFrom]").val(ui.values[0]);
			$(".filtry-zbozi input[name=priceTo]").val(ui.values[1]);
			$(".filtry-zbozi input[name=priceChanged]").val(1);
			
			/* zobrazit aktualne zvolene ceny */
			showPriceRange();
		},
		stop: function(event, ui) {
			$(".filtry-zbozi .cenovy-filtr form").submit();
		}
	});
	
	showPriceRange();

	/* pri zaskrtnuti checkboxu odeslat formular */
	$(".filtry-zbozi input[type=checkbox]").change(function(){
		$(this).parents("form").submit();
	});
	
	/* pridame skryty input pro priznak ajaxoveho requestu */
	$(".filtry-zbozi form").append("<input type='hidden' name='isAjax' value='1'>");			
	
	/* nabindujeme ajaxForm (formular se odesle ajaxem a aktualizuje obsah divu #ajax-wrapper) */
	$(".filtry-zbozi form").ajaxForm({
		target: '#ajax-wrapper',
		beforeSubmit: function(){
			$("<div class='loading-layer'>").prependTo(".filtry-zbozi");
			$(".filtry-zbozi").fadeTo("fast", 0.5);
		},
		success: function(){
			/* formulare byly prenacteny, je potreba je znovu nabindovat */
			updateFilter();
		}
	});
	
	/* vysouvaci panel vyrobcu */
	$('.filtry-zbozi .toggleProducersFilter').click(function(){
		if ($('.filtry-zbozi .filtr-vyrobcu').hasClass('active')) {
			$('.filtry-zbozi .filtr-vyrobcu').slideUp('fast');
		} else {
			$('.filtry-zbozi .filtr-vyrobcu').slideDown('fast');
		}
		
		$(this).toggleClass('active');
		$('.filtry-zbozi .filtr-vyrobcu').toggleClass('active');
		
		return false;
	});
	
	/* zavreni vysouvaciho panelu */
	$('.filtry-zbozi .filtr-vyrobcu .close').click(function(){
		$('.filtry-zbozi .filtr-vyrobcu').slideUp('fast').toggleClass('active');
		$('.filtry-zbozi .toggleProducersFilter').toggleClass('active');
		
		return false;
	});
	
	if ($('.filtry-zbozi .filtr-vyrobcu input[checked]').length == 0)
	{
		$('.filtry-zbozi .filtr-vyrobcu').hide();
	}
	else
	{
		$('.filtry-zbozi .filtr-vyrobcu').addClass('active');
	}
	
		
	/* graficke selectboxy */
	$('.filtry-zbozi select, .control-box select').selectBox();
	zvetsovac();
	
}

/* zobrazit aktualni zvolene hodnoty v posuvniku filtru cen */
function showPriceRange()
{
	$(".filtry-zbozi .slider .valueFrom").text(symbolLevy + $(".filtry-zbozi input[name=priceFrom]").val() + ' ' + symbolPravy);
	$(".filtry-zbozi .slider .valueTo").text(symbolLevy + $(".filtry-zbozi input[name=priceTo]").val() + ' ' + symbolPravy);
}

