
$(function() {
	var moveSearchButton = function() {
		$(".filter input.search").appendTo($(".filter select:visible:last").parent());
	};

	var getFilters = function() {
		var filters = '';

		$(".filter select:visible").each(function() {
			var val = $(this).val();
			if (val != 'reset') {
				filters += '/' + val;
			}
		});

		return filters;
	};

	$(".filter input.search").bind('click', function() {
		var  category = (($("a.wardrobe, a.shoes").not(":visible").attr('class') == 'shoes') ? '/obuwie' : '/odziez')
			,parameters = ''
		;

		// parametry wyswietlania listy
		var patt = new RegExp("/sort/.*");
		if (patt.test(window.location)) {
			var matches = String(window.location).match(patt);
			parameters = matches[0];
		}


		window.location = category + getFilters() + parameters;
	});


	$("#f_gender").bind('change', function() {
		var  $this = $(this)
			,val = $this.val()
			,category = $("a.wardrobe, a.shoes").not(":visible").attr('class');
		;

		$("#f_shoe_width_any, #f_shoe_width_mens, #f_shoe_width_womens, #f_shoe_width_kids, #f_shoe_size_any, #f_shoe_size_mens, #f_shoe_size_womens, #f_shoe_size_kids, #f_wardrobe_size_any, #f_wardrobe_size_mens, #f_wardrobe_size_womens, #f_wardrobe_size_kids").hide().attr('disabled', 'disabled');

		if (val == 'f_g_men' && category == 'shoes') {
			$("#f_shoe_width_mens, #f_shoe_size_mens").show().removeAttr('disabled');
		}
		else if (val == 'f_g_women' && category == 'shoes') {
			$("#f_shoe_width_womens, #f_shoe_size_womens").show().removeAttr('disabled');
		}
		else if (val == 'f_g_kid' && category == 'shoes') {
			$("#f_shoe_width_kids, #f_shoe_size_kids").show().removeAttr('disabled');
		}
		else if (category == 'shoes') {
			$("#f_shoe_width_any, #f_shoe_size_any").show().removeAttr('disabled');
		}
		else if (val == 'f_g_men' && category == 'wardrobe') {
			$("#f_wardrobe_size_mens").show().removeAttr('disabled');
		}
		else if (val == 'f_g_women' && category == 'wardrobe') {
			$("#f_wardrobe_size_womens").show().removeAttr('disabled');
		}
		else if (val == 'f_g_kid' && category == 'wardrobe') {
			$("#f_wardrobe_size_kids").show().removeAttr('disabled');
		}
		else if (category == 'wardrobe') {
			$("#f_wardrobe_size_any").show().removeAttr('disabled');
		}

		moveSearchButton();
	});


	$("a.wardrobe, a.shoes").bind('click', function(e) {
		e.preventDefault();

		var  $this = $(this)
			,cls = $(this).attr('class')
			,gender = $("#f_gender").val()
		;

		if (cls == 'wardrobe') {
			$("#f_shoes_destiny, #f_foot_type, #f_shoe_width_any, #f_shoe_width_mens, #f_shoe_width_womens, #f_shoe_width_kids, #f_shoe_size_any, #f_shoe_size_mens, #f_shoe_size_womens, #f_shoe_size_kids, #f_wardrobe_size_mens, #f_wardrobe_size_womens, #f_wardrobe_size_kids").hide().attr('disabled', 'disabled');

			$("#f_wardrobe_destiny").show().removeAttr('disabled');
			if (gender == 'f_g_men') {
				$("#f_wardrobe_size_mens").show().removeAttr('disabled');
			}
			else if (gender == 'f_g_women') {
				$("#f_wardrobe_size_womens").show().removeAttr('disabled');
			}
			else if (gender == 'f_g_kid') {
				$("#f_wardrobe_size_kids").show().removeAttr('disabled');
			}
			else {
				$("#f_wardrobe_size_any").show().removeAttr('disabled');
			}
		}
		else if (cls == 'shoes') {
			$("#f_wardrobe_destiny, #f_wardrobe_size_any, #f_wardrobe_size_mens, #f_wardrobe_size_womens, #f_wardrobe_size_kids").hide().attr('disabled', 'disabled');

			$("#f_shoes_destiny, #f_foot_type").show().removeAttr('disabled');

			if (gender == 'f_g_men') {
				$("#f_shoe_width_mens, #f_shoe_size_mens").show().removeAttr('disabled');
			}
			else if (gender == 'f_g_women') {
				$("#f_shoe_width_womens, #f_shoe_size_womens").show().removeAttr('disabled');
			}
			else if (gender == 'f_g_kid') {
				$("#f_shoe_width_kids, #f_shoe_size_kids").show().removeAttr('disabled');
			}
			else {
				$("#f_shoe_width_any, #f_shoe_size_any").show().removeAttr('disabled');
			}
		}

		$this.hide();
		$("a.wardrobe, a.shoes").not(this).show();

		moveSearchButton();
	});
});
