  $(document).ready(function(){
    $("#other_brands_link").click(function(event){
      event.preventDefault();
      function show_other_brands() {
        $("#other_brands").fadeIn("slow");
      }
      $(this).fadeOut("slow", show_other_brands);
    });
    function check_all_brands_checkbox_if_needed() {
      if ($("#all_brands_checkbox").is(":checked")) {
        $("#brand_checkboxes input:checked").each(function() {
          $(this).attr("checked", false);
          $(this).parent().children("span").removeClass("checked");
        });
        $("#all_brands_checkbox").parent().children("span").addClass("checked");
      } else {
        if ($("#brand_checkboxes input:checked").length == 0) {
          $("#all_brands_checkbox").attr("checked", true);
          $("#all_brands_checkbox").parent().children("span").addClass("checked");
        } else {
          $("#all_brands_checkbox").attr("checked", false);
          $("#all_brands_checkbox").parent().children("span").removeClass("checked");
        }
      }
    }
    function highlight_checked_brand_checkboxes() {
        $("#brand_checkboxes input:checked").each(function() {
          $(this).parent().children("span").addClass("checked");
        });
    }
    check_all_brands_checkbox_if_needed();
    highlight_checked_brand_checkboxes();
    $("#all_brands_checkbox_span").click(function(event){
      $("#all_brands_checkbox").attr("checked", true);
      check_all_brands_checkbox_if_needed();
    });
    $("#brand_checkboxes span").click(function(event){
      $("#all_brands_checkbox").attr("checked", false);
      $("#all_brands_checkbox").parent().children("span").removeClass("checked");
      if ($(this).hasClass("checked")) {
        $(this).removeClass("checked");
        $(this).parent().children("input").attr("checked", false);
      } else {
        $(this).addClass("checked");
        $(this).parent().children("input").attr("checked", true);
      }
      check_all_brands_checkbox_if_needed();
    });
    $("#brand_select_link").click(function(event){
      var selected = new Array();
      $("#brand_checkboxes input:checked").each(function() {
        selected.push($(this).attr("name"));
      });
      selected_brands_string = selected.join(",")
      if (selected_brands_string != "") {
        $("#selected_brands_list_div").html('<input type="hidden" name="brand" id="selected_brands_list" />');
        $("#selected_brands_list").val(selected_brands_string);
      }
      $("#brand_select_form").submit();
    });



	function check_all_colours_checkbox_if_needed() {
	      if ($("#all_colours_checkbox").is(":checked")) {
	        $("#colour_checkboxes input:checked").each(function() {
	          $(this).attr("checked", false);
	          $(this).parent().children("span").removeClass("checked");
	        });
	        $("#all_colours_checkbox").parent().children("span").addClass("checked");
	      } else {
	        if ($("#colour_checkboxes input:checked").length == 0) {
	          $("#all_colours_checkbox").attr("checked", true);
	          $("#all_colours_checkbox").parent().children("span").addClass("checked");
	        } else {
	          $("#all_colours_checkbox").attr("checked", false);
	          $("#all_colours_checkbox").parent().children("span").removeClass("checked");
	        }
	      }
	    }
		function highlight_checked_colour_checkboxes() {
	        $("#price_checkboxes input:checked").each(function() {
	          $(this).parent().children("span").addClass("checked");
	        });
    	}
    	check_all_colours_checkbox_if_needed();
    	highlight_checked_colour_checkboxes();
    
    	$("#all_colours_checkbox_span").click(function(event){
      		$("#all_colours_checkbox").attr("checked", true);
      		check_all_colours_checkbox_if_needed();
    	});
		
		$("#colour_checkboxes div").click(function(event){
			
      		$("#all_colours_checkbox").attr("checked", false);
      		$("#all_colours_checkbox").parent().children("span").removeClass("checked");
			

			
      		if ($(this).hasClass("current_colour")) {
        		$(this).removeClass("current_colour");
        		$(this).parent().children("input").attr("checked", false);
      		} else {
        		$(this).addClass("current_colour");
        		$(this).parent().children("input").attr("checked", true);
		      }
      		check_all_colours_checkbox_if_needed();
    	});
		$("#colour_select_link").click(function(event){
	      var selected = new Array();
	      $("#colour_checkboxes input:checked").each(function() {
	        selected.push($(this).attr("name"));
	      });
	      selected_colours_string = selected.join(",")
	      if (selected_colours_string != "") {
	        $("#selected_colours_list_div").html('<input type="hidden" name="colour" id="selected_colours_list" />');
	        $("#selected_colours_list").val(selected_colours_string);
	      }
	      $("#colour_select_form").submit();
	    });

	
	
    function check_all_prices_checkbox_if_needed() {
      if ($("#all_prices_checkbox").is(":checked")) {
        $("#price_checkboxes input:checked").each(function() {
          $(this).attr("checked", false);
          $(this).parent().children("span").removeClass("checked");
        });
        $("#all_prices_checkbox").parent().children("span").addClass("checked");
      } else {
        if ($("#price_checkboxes input:checked").length == 0) {
          $("#all_prices_checkbox").attr("checked", true);
          $("#all_prices_checkbox").parent().children("span").addClass("checked");
        } else {
          $("#all_prices_checkbox").attr("checked", false);
          $("#all_prices_checkbox").parent().children("span").removeClass("checked");
        }
      }
    }
    function highlight_checked_price_checkboxes() {
        $("#price_checkboxes input:checked").each(function() {
          $(this).parent().children("span").addClass("checked");
        });
    }
    check_all_prices_checkbox_if_needed();
    highlight_checked_price_checkboxes();
    $("#all_prices_checkbox_span").click(function(event){
      $("#all_prices_checkbox").attr("checked", true);
      check_all_prices_checkbox_if_needed();
    });
	
    $("#price_checkboxes span").click(function(event){
      $("#all_prices_checkbox").attr("checked", false);
      $("#all_prices_checkbox").parent().children("span").removeClass("checked");
      if ($(this).hasClass("checked")) {
        $(this).removeClass("checked");
        $(this).parent().children("input").attr("checked", false);
      } else {
        $(this).addClass("checked");
        $(this).parent().children("input").attr("checked", true);
      }
      check_all_prices_checkbox_if_needed();
    });
	
	
    $("#price_select_link").click(function(event){
      var selected = new Array();
      $("#price_checkboxes input:checked").each(function() {
        selected.push($(this).attr("name"));
      });
      selected_prices_string = selected.join(",")
      if (selected_prices_string != "") {
        $("#selected_prices_list_div").html('<input type="hidden" name="price" id="selected_prices_list" />');
        $("#selected_prices_list").val(selected_prices_string);
      }
      $("#price_select_form").submit();
    });
    $("a.second_level_category_link").click(function(event){
      if ($(this).parent().parent().parent().children("div.second_level_category").children().length != 0) {
        event.preventDefault();
        $("div.second_level_category").hide();
        $(this).parent().parent().parent().children("div.second_level_category").slideDown();
      }
    });
    $(document).ready(function(){
      $('img.has_hover').imghover();
    });
  });
