

function SetCookies(nazwa1, tabela, nazwa2, wartosc) {
	var COOKIE_NAME = nazwa1;
	var ADDITIONAL_COOKIE_NAME = nazwa2;

	var options = {
		path: '/',
		expires: 1
	};

	// delete cookie
	$.cookie(COOKIE_NAME, null);
	// set cookie by number of days
	$.cookie(COOKIE_NAME, tabela, options);

	if (nazwa2 != '' && wartosc != '')
	{
		// delete second cookie
		$.cookie(ADDITIONAL_COOKIE_NAME, null);
		// set a second cookie
		$.cookie(ADDITIONAL_COOKIE_NAME, wartosc, options);
	}
}

function zaawansowane_click() {
	if ($(".zaawansowane").is(":hidden")) {
		$(".zaawansowane").slideToggle("normal");
		$("td.okno_wyszukiwarki, .selekty, div:not(.zaawansowane p), input:not(.zaawansowane input), img, .dane, #test .box").mousedown(function(){
			if (!(
				$(this).hasClass('blok') ||
				$(this).hasClass('zaawansowane') ||
				$(this).hasClass('box2') ||
				$(this).hasClass('kont') ||
				$(this).hasClass('okno') ||
				this.tagName == 'DIV' &&
				!$(this).hasClass('selekty')
				)) {
				zaawansowane_click();
			}
		});
	} else {
		$(".zaawansowane").slideToggle("normal");
		$("*").unbind('mousedown');
	}
}

function usun_zachowane (img) {
	var id = img.attr('id');
	var row = img.parent().parent();
	
	
	var url = katalog + "/_Wyszukiwarka/?action=Aktualizacja_UsunZachowane&action2=UsunZachowane&zachowaj="+id;
	$.post(url,
	{
		action: 'UsunZachowane',
		ajax: true
	}, function () {
		row.remove();
		tabela_ulubione = $("table.ulubione tbody").html();
		tabela_ulubione= $.trim(tabela_ulubione);
		if (tabela_ulubione == '') {
			$(".box_remember").hide();
		}
	});
}

function check_koje_range () {

	var koje_od = $("#koje_od").val();
	var koje_do = $("#koje_do").val();

	var valid_test = true;

	if (koje_od > 0 && koje_do > 0) {
		if (koje_od >= koje_do) {
			valid_test1 = false;
		}
	}

	if (valid_test == false) {
		alert('Liczba koi "od" musi być mniejsza od liczby koi "do".');
		return false;
	} else {
		return true;
	}
}

function check_cena_range () {

	var cena_od = $("#cena_od_input").val();
	var cena_do = $("#cena_do_input").val();

	var valid_test = true;


	if (cena_od > 0 && cena_do > 0) {
		if (cena_do <= cena_od) {
			valid_test = false;
		}
	}

	if (valid_test == false) {
		alert('Cena "od" musi być mniejsza od ceny "do".');
		return false;
	} else {
		return true;
	}
}

function check_miesiace_range () {

	var miesiac_od = $("#miesiace1").val();
	var miesiac_do = $("#miesiace2").val();
	var valid_test = true;


	if (miesiac_od != '' && miesiac_do != '') {
		if (miesiac_do <= miesiac_od) {
			valid_test = false;
		}
	}

	if (valid_test == false) {
		alert('Miesiąc "od" musi być mniejsza od miesiąca "do".');
		return false;
	} else {
		return true;
	}
}

function zachowane_filtry (box) {
	var kontener = $(".zaznaczone_zaawansowane");
	var check = box;
	var id = box.attr('id');

	if (check.is(":checked")) {
		var p = box.parent();
		var k = p.clone();

		k.attr('id', id);
		k.find("input#"+id).removeAttr('id').removeAttr('name');
		k.appendTo(kontener).click(function(){
			zachowane_filtry(k);
			$("input#"+id).removeAttr("checked");
		});
	} else {
		kontener.find("#"+id).remove();
	}

}

function pobierz_wyniki () {
	if (!$('#pomoc').is(':hidden')) {
		$('#pomoc').hide();
	}
	var test_form = $("#FormFiltr").valid()
	var test_range_koje = check_koje_range();
	var test_range_cena = check_cena_range();
	var test_range_miesiace = check_miesiace_range();

	if (test_form && test_range_koje && test_range_cena && test_range_miesiace) {
	} else {
		return false;
	}
	var filtr = $("#FormFiltr");
	var sel = filtr.find(":input");
	var elem = '';
	var tabela = '';

	var _cookie1 = 'filtr_tabele';
	var _cookie2 = 'filtr_wartosci';

	$.each( sel, function(i){
		if (($(this).attr('type') == 'checkbox') && ($(this).attr('checked') == true))
		{
			n = $(this).attr('checked');
			elem = elem+','+n;
			o = $(this).attr('name');
			tabela = tabela+','+o;
		}
		else if ($(this).val() != '' && ($(this).attr('type') != 'checkbox') && ($(this).val() != 'od') && ($(this).val() != 'do') )
		{
			n = $(this).val();
			elem = elem+','+n;
			o = $(this).attr('name');
			tabela = tabela+','+o;
		}
	});

	$("#loading").show();

	SetCookies (_cookie1, tabela, _cookie2, elem);
	$("#test").load(katalog + "/_Wyszukiwarka/?action=Aktualizacja_User&action2=User",
	{
		action: 'User',
		tabela: tabela,
		id: elem,
		ajax: true
	}, function (responseText, textStatus, XMLHttpRequest) {
		$("#loading").hide();
		$("#test").show();
	});
}

function getSelectKraje (element) {
        $("#select_kraj").load(katalog+"/_Wyszukiwarka/?action=Aktualizacja_GetKraje",
        {
                tabela: element.attr('name'),
                id: element.val(),
                ajax: true
        });
}

function getSelectLokalizacja (element) {
        $("#select_lokalizacja").load(katalog+"/_Wyszukiwarka/?action=Aktualizacja_GetPort",
        {
                tabela: element.attr('name'),
                id: element.val(),
                ajax: true
        });
}

function getSelectPodregion (element) {
        $("#select_podregion").load(katalog+"/_Wyszukiwarka/?action=Aktualizacja_GetPodregion",
        {
                tabela: element.attr('name'),
                id: element.val(),
                ajax: true
        });
}

$(document).ready(function(){
	$('#pomoc').css('display', 'block');
	var tabela_ulubione = $("table.ulubione tbody").html();
	tabela_ulubione= $.trim(tabela_ulubione);
	if (tabela_ulubione == '') {
		$(".box_remember").hide();
	}

	$(".usun_ulubione").click(function(){
		usun_zachowane($(this));
	});

	$("img#zaawansowane").click(function(){
		zaawansowane_click();
	});

	$("#configDatepicker, #miesiace1, #miesiace2").mask("9999-99-99");
	$("#configDatepicker, #miesiace1, #miesiace2").datepick({
		dateFormat: 'yy-mm-dd'
	});


	if (location.hash != '') {
		var oferta = location.hash.substr(1);
		if (oferta.indexOf('/')<0) {
			if (parseInt(oferta) == oferta) {
				oferta = parseInt(oferta);
				$('#oferta_specjalna').val(oferta);
				pobierz_wyniki();
			}
		} else {
			var dane = oferta.split('/');
			if (parseInt(dane[0]) == dane[0]) {
				var d = new Date();
				if (dane[0].length == 1) {
					dane[0] = '0'+dane[0];
				}
				$('#configDatepicker').val(d.getFullYear()+'-'+dane[0]+'-01');
			}
			if (parseInt(dane[1]) == dane[1]) {
				$('#id_kraj').val(dane[1]);
			}
			pobierz_wyniki();	
		}
		location.hash = '';
	}
	
	$("#resetuj").click(function(){
		var elem = $("#FormFiltr :checkbox");

		$.each( elem, function(i){
			$(this).removeAttr('checked');
		});

		elem = $("#FormFiltr :input");

		$.each( elem, function(i){
			$(this).val('');
		});
		$(".selectReplacement").remove();
		$("label.error").remove();
		$(".zaznaczone_zaawansowane").html("");
		//setForm();
		$("#FormFiltr").valid();
	});

	$("#id_region").change(function(){
		var element = $(this);

                getSelectPodregion(element);
                getSelectKraje(element);
                getSelectLokalizacja(element);
	});


        $("#id_podregion").live('change', function(){
                var element = $(this);

                getSelectKraje(element);
                getSelectLokalizacja(element);
        });

        $("#id_kraj").live('change', function(){
                var element = $(this);

                getSelectLokalizacja(element);
        });

	$("#search").click(function(){
                if ($('#cena_od_input').val() == 'od') {
                        $('#cena_od_input').val('');
                }
                if ($('#cena_do_input').val() == 'do') {
                        $('#cena_do_input').val('');
                }
		pobierz_wyniki();
                if ($('#cena_od_input').val() == '') {
                        $('#cena_od_input').val('od');
                }
                if ($('#cena_do_input').val() == '') {
                        $('#cena_do_input').val('do');
                }
		});

	var validator = $("#FormFiltr").validate({
		rules: {
			koje_od: {
				range: [0,100]
			},
			koje_do: {
				range: [0,100]
			},
			dlugosc: {
				range: [0,100]
			},
			cena_od: {
				range: [0,10000]
			},
			cena_do: {
				range: [0,10000]
			},
			oferta_specjalna: {
				range: [0,100]
			}
		},
		messages: {
			koje_od: {
				range: "Liczba musi si\u0119 zawiera\u0107 w przedziale 0 - 100"
			},
			koje_do: {
				range: "Liczba musi si\u0119 zawiera\u0107 w przedziale 0 - 100"
			},
			dlugosc: {
				range: "Liczba musi si\u0119 za\u0107ierać w przedziale 0 - 100"
			},
			cena_od: {
				range: "Liczba musi si\u0119 zawiera\u0107 w przedziale 0 - 10000"
			},
			cena_do: {
				range: "Liczba musi si\u0119 za\u0107ierać w przedziale 0 - 10000"
			},
			oferta_specjalna: {
				range: "Liczba musi si\u0119 za\u0107ierać w przedziale 0 - 100"
			}
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) {
			if ( element.is(":radio") )
				error.appendTo( element.parent().next().next() );
			else if ( element.is(":checkbox") )
				error.appendTo ( element.next() );
			else
				error.appendTo( element.parent() );
		},
		// 		// specifying a submitHandler prevents the default submit, good for the demo
		// 		submitHandler: function() {
		// 			alert("submitted!");
		// 		},
		invalidHandler: function() {
			alert(validator.numberOfInvalids() + " pól jest błednie wypełnionych.");
		},

		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("").addClass("checked");
		}
	});
        $(".zachowaj").live('click', function(){
                zachowaj($(this));
        });
	//range validation
	$("#koje_do, #koje_od").blur(function() {
		check_koje_range();
	});

	$("#cena_do_input, #cena_od_input").blur(function() {
		check_cena_range();
	});

	$("#miesiace1, #miesiace2").change(function() {
		check_miesiace_range();
	});

	$(":checkbox").click(function(){
		zachowane_filtry($(this));
	});

	$("#pokaz_pomoc").live('click', function() {
		$('#pomoc').slideToggle("normal");
	});

	$(".poprzedni_tydzien").live('click', function(){
		previous_row($(this));
	});
	$(".nastepny_tydzien").live('click', function(){
		next_row($(this));
	});

});

