// HTML UI Scripts

// run jQuery wrapped in closure
(function($) {

$(document).ready(function() {
	
	// Remove email field from JA locale 
	
	var myAction = $("#mailinglist_form").attr("action");
	
	//if(myAction.charAt(7) == "j" &&  myAction.charAt(8) == "a" ) {
		//$("#mailinglist_form").parent(".beta").css("display", "none");
	//}
	
	// Filter Category Dropdowns
	
	$("li.filter_cat").click( function() {
				
		if (!($(this).hasClass("filter_cat_open"))) {
			$(".filter_cat ul").css("display", "none");
			$(".filter_cat_open").removeClass("filter_cat_open");
			
			$(this).addClass("filter_cat_open");
			$(this).children("ul").css("display", "block");
		}
		else {
			$(".filter_cat ul").css("display", "none");
			$(this).removeClass("filter_cat_open");			
		}
	});
	
	// Vision Lab Slider
	
	var num_videos = $(".video_link").length;	
	var video_shift = 264;
	var max_shift = (video_shift * num_videos) - (video_shift * 3);
	
	$("a.video_next").click(function() {
		if (!($(this).hasClass("disabled_arr"))) {
			
			var current_margin_string = $("#video_list").css("margin-left");
			var current_margin = current_margin_string.split("p");
			var new_margin = parseInt(current_margin[0]) - video_shift;
			
			$("#video_list").css("margin-left",  new_margin.toString() + "px");
			
			if(new_margin == (max_shift * -1)) $(this).addClass("disabled_arr");
			else $(this).removeClass("disabled_arr");
			
			if(new_margin < 0) $(".video_prev").removeClass("disabled_arr");
		}
	});
	
	$("a.video_prev").click(function() {
		if (!($(this).hasClass("disabled_arr"))) {
			
			var current_margin_string = $("#video_list").css("margin-left");
			var current_margin = current_margin_string.split("p");
			var new_margin = parseInt(current_margin[0]) + video_shift;
			
			$("#video_list").css("margin-left",  new_margin.toString() + "px");
			
			if(new_margin == 0) $(this).addClass("disabled_arr");
			else $(this).removeClass("disabled_arr");
			
			if(new_margin > (max_shift * -1)) $(".video_next").removeClass("disabled_arr");
		}
	});
	
	// Product Wall Pagination
	
	var num_items = $(".prod_wall_item").length;	
	var num_pages = 0;
	var per_page = 16;
	
	if (num_items%per_page == 0) {
		num_pages = Math.floor(num_items/per_page);
	}
	else num_pages = Math.floor(num_items/per_page) + 1;
	
	if(num_pages > 1) {
		
		$("#product_wall_container").css("height", "908px");
	
		for (var c = num_pages; c >= 1; c--) {
			if (c == 1) {
				$(".product_pagination").append("<li class='current_page'>" + c + "</li>");
			}
			else $(".product_pagination").append("<li>" + c + "</li>");
		}
		
		$(".product_pagination").append("<li class='prev_btn btn_disabled'><</li>");
		$(".product_pagination").prepend("<li class='next_btn'>></li>");
		
		$(".product_pagination li").click( function(){
			
			if ( !($(this).hasClass("next_btn")) && !($(this).hasClass("prev_btn"))) {
			
				var my_num = parseInt($(this).text());
				var my_shift = (-908 * my_num) + 908;
				
				$("#product_wall_html").css("margin-top", my_shift.toString() + "px");
			
				$(".product_pagination li.current_page").removeClass("current_page");
				
				$(".product_pagination li").each( function(e) {
					if ($(this).text() == my_num.toString()) $(this).addClass("current_page");
				});
			}
			
			if ($(this).hasClass("next_btn")) {
				
				if( $(this).siblings(".current_page").text() != num_pages.toString() ) {
			
					var my_num = parseInt($(this).siblings(".current_page").text()) + 1;
					var my_shift = (-908 * my_num) + 908;
					
					$("#product_wall_html").css("margin-top", my_shift.toString() + "px");
				
					$(".product_pagination li.current_page").removeClass("current_page");
					
					$(".product_pagination li").each( function(e) {
						if ($(this).text() == my_num.toString()) $(this).addClass("current_page");
					});	
				}	
			}
			
			if ($(this).hasClass("prev_btn")) {
				
				if( $(this).siblings(".current_page").text() != "1" ) {
			
					var my_num = parseInt($(this).siblings(".current_page").text()) - 1;
					var my_shift = (-908 * my_num) + 908;
					
					$("#product_wall_html").css("margin-top", my_shift.toString() + "px");
				
					$(".product_pagination li.current_page").removeClass("current_page");
					
					$(".product_pagination li").each( function(e) {
						if ($(this).text() == my_num.toString()) $(this).addClass("current_page");
					});	
				}	
			}
			
			if( $(this).parent().children(".current_page").text() == "1" ) $(".prev_btn").addClass("btn_disabled");
			else $(".prev_btn").removeClass("btn_disabled");
			
			if( $(this).parent().children(".current_page").text() == num_pages.toString() ) $(".next_btn").addClass("btn_disabled");
			else $(".next_btn").removeClass("btn_disabled");
		});	
	}
	
	// marquee controls
	
	var animatingNow = false;
	
	$("#home_marq_controls a").click(function() {
				
		if(!($(this).hasClass("current")) && !(animatingNow)) {
			
			animatingNow = true;
			var myBtn = $(this);
			
			$(".home_marq_current").fadeOut('slow', function() {
				
				$(".home_marq_current").removeClass("home_marq_current");
				
				switch(myBtn.text()) {
				case "1":
					$("#home_marq2").fadeIn('slow', function() { 
						animatingNow = false; 
						$("#home_marq_controls a.current").removeClass("current");
						myBtn.addClass("current");
						$("#home_marq2").addClass("home_marq_current");
					});
					break; 
				case "2":
					$("#home_marq3").fadeIn('slow', function() { 
						animatingNow = false; 
						$("#home_marq_controls a.current").removeClass("current");
						myBtn.addClass("current");
						$("#home_marq3").addClass("home_marq_current");
					});
					break; 
				case "3":
					$("#home_marq4").fadeIn('slow', function() { 
						animatingNow = false; 
						$("#home_marq_controls a.current").removeClass("current");
						myBtn.addClass("current");
						$("#home_marq4").addClass("home_marq_current");
					});
					break; 
			}
			  });
			
			
		}
	});
	
	// footer box size
	var alphaHeight = $("#footer .alpha").css("height");
	$("#footer .beta").css("height", alphaHeight);
	
	
	// PDP Carousel
	
	var carAnimatingNow = false;
		
		//item holder width
		$(".item_holder").each( function(i) {
			var numItems = $(this).children(".carousel_item").length;
			var childWidth = $(this).children(".carousel_item:first-child").css("width");
			var childWidthNum = childWidth.split("p");
			var holderWidth = numItems * parseInt(childWidthNum[0]);
			$(this).css("width", holderWidth.toString() + "px");	
			
			if (numItems < 4) {
				$(this).parent(".carousel_frame").siblings("a").css("background", "none");
				$(this).parent(".carousel_frame").siblings("a").css("cursor", "default");
			}
			
		});
		
		
		// recommended carousel click
				
		$("a.carousel_prev").click( function() {
			
			if(!(carAnimatingNow)) {
			
				var holderMargin = $(this).siblings(".carousel_frame").children(".item_holder").css("marginLeft");
				var holderMarginNum = parseInt(holderMargin.split("p")[0]);
			
				if(holderMarginNum != 0) {
					
					carAnimatingNow = true;
			
					$(this).siblings(".carousel_frame").children(".item_holder").animate({
					marginLeft: '+=272'
					}, 500, function() {
						carAnimatingNow = false;
				  });	
				}
			}
		});
		
		$("a.carousel_next").click( function() {
			if(!(carAnimatingNow)) {
				
				var numItems = $(this).siblings(".carousel_frame").children(".item_holder").children(".carousel_item").length;
				var holderMargin = $(this).siblings(".carousel_frame").children(".item_holder").css("marginLeft");
				var holderMarginNum = parseInt(holderMargin.split("p")[0]);
				var lastMargin = ((numItems * 272) - (3*272)) * (-1);
			
				if(holderMarginNum != lastMargin) {
					
					carAnimatingNow = true;
			
					$(this).siblings(".carousel_frame").children(".item_holder").animate({
					marginLeft: '-=272'
					}, 500, function() {
						carAnimatingNow = false;
				  });	
				}
			}
		});		

		// Clear zip code when entering city box
		$("#city").focus(function() {
			$('#postal_code').val('');
		});
	});


})(jQuery);

//function htmlNavReplace() {
//	(function($) {
//	$('#primaryNavigation a[href="/sunglasses/all/baseball/all"]').attr("href", "/products-html/sunglasses/all/baseball/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/all/golf/all"]').attr("href", "/products-html/sunglasses/all/golf/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/all/running/all"]').attr("href", "/products-html/sunglasses/all/running/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/all/cycling/all"]').attr("href", "/products-html/sunglasses/all/cycling/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/all/tennis/all"]').attr("href", "/products-html/sunglasses/all/tennis/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/all/snow-water/all"]').attr("href", "/products-html/sunglasses/all/snow-water/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/all/multisport/all"]').attr("href", "/products-html/sunglasses/all/multisport/all");
//	
//	$('#primaryNavigation a[href="/lifestyle/all/all"]').attr("href", "/products-html/lifestyle/all/all");
//	
//	$('#primaryNavigation a[href="/sunglasses/"]').attr("href", "/products-html/sunglasses/all/all/all");
//	
//	$('#primaryNavigation a[href="/optics/"]').attr("href", "/products-html/optics/all/all");
//	
//	$('#primaryNavigation a[href="/interchange-system/"]').attr("href", "/products-html/interchange-system/all/all");
//
//	})(jQuery);
//}
