$(function() {

	// Ostonappi piiloon kokonaan jos ostaminen ei ole mahdollista
	$(".AddToCart[disabled]").closest("form").hide();

	$('#NewCustomerForm label.GroupLabel[for=yritys]').after('<span class="ForCompany">Täytä nämä tilatessasi yritykselle</span>')
	$("#ShoppingCart dd.ToCheckout").html('<dd class="ToCheckout"><a href="/checkout/"><span>Kassalle</span></a></dd>');
	$("#ContinueToPaymentForm .CheckWrap .Checks .FormHelp a.TermsLink").attr("href", "http://www.topshot.fi/interface/TermsAndConditions?inlineId=myOnPageContent&height=300&width=600")
	// Hide the headers if no products found next to them
	if (!($("#CompatibleProductsHeader").next().is(".ProductList"))) { $("#CompatibleProductsHeader").hide(); }
	if (!($("#SimilarProductsHeader").next().is(".ProductList"))) { $("#SimilarProductsHeader").hide(); }
	
	
	// Crossselling carousel at productpage and in cart
	if ($("#CrossSaleProducts div.Product").length) {
		var CrossSaleHeaderText;
		if ($("#CartTable").length) { CrossSaleHeaderText = "Näitä tuotteita ostaneet ostivat myös..."} else { CrossSaleHeaderText = "Tämän tuotteen ostaneet ostivat myös..."}
		$("#CrossSaleScroller").css("overflow","hidden").before('<h2 class="Header">' + CrossSaleHeaderText + '</h2><span class="ScrollToPrev" style="display: none;"><span class="Icon"></span>&laquo; Edelliset</span><span class="ScrollToNext"><span class="Icon"></span>Seuraavat &raquo;</span>');
		$("#CrossSaleProducts").css("width","2184px");
		var $prev = $('.ScrollToPrev'), $next = $('.ScrollToNext'), $scp = $('#CrossSaleScroller');
		$scp.serialScroll({
			items: '.Product',
			prev: '.ScrollToPrev',
			next: '.ScrollToNext',
			axis: 'x',
			duration: 350,
			force: true,
			step: 4,
			exclude: 2,
			cycle: false,
			onBefore: function(e,elem,$pane,$items,pos) {
				$prev.add($next).fadeIn(250);
				if (pos==0) {
					$prev.fadeOut(250);
				} else if (pos==$items.length-3) {
					$next.fadeOut(250);
				}
			}				
		});
		$(document).keyup(function(e) {
			switch (e.keyCode) {
				case 39:
					$scp.trigger('next');
					break;
				case 37:
					$scp.trigger('prev');
					break;
			}
		});
	}

});
$(function() {
	if ($("#SimilarProducts div.Product").length) {
		var SimilarHeaderText;
		if ($("#CartTable").length) { SimilarHeaderText = "Samankaltaisia tuotteita.."} else { SimilarHeaderText = "Samankaltaisia tuotteita..."}
		$("#SimilarScroller").css("overflow","hidden").before('<h2 class="Header">' + SimilarHeaderText + '</h2><span class="ScrollToPrevSimilar" style="display: none;"><span class="Icon"></span>&laquo; Edelliset</span><span class="ScrollToNextSimilar"><span class="Icon"></span>Seuraavat &raquo;</span>');
		$("#SimilarProducts").css("width","2184px");
		var $prev = $('.ScrollToPrevSimilar'), $next = $('.ScrollToNextSimilar'), $scp = $('#SimilarScroller');
		$scp.serialScroll({
			items: '.Product',
			prev: '.ScrollToPrevSimilar',
			next: '.ScrollToNextSimilar',
			axis: 'x',
			duration: 350,
			force: true,
			step: 4,
			exclude: 2,
			cycle: false,
			onBefore: function(e,elem,$pane,$items,pos) {
				$prev.add($next).fadeIn(250);
				if (pos==0) {
					$prev.fadeOut(250);
				} else if (pos==$items.length-3) {
					$next.fadeOut(250);
				}
			}				
		});
		$(document).keyup(function(e) {
			switch (e.keyCode) {
				case 39:
					$scp.trigger('next');
					break;
				case 37:
					$scp.trigger('prev');
					break;
			}
		});
	}

	// Ajax messages which are fixed on top of page via CSS
	$.ajaxSetup({ cache: false });
	$('<p id="AjaxMsg"></p>').insertAfter("#Container");
	$('#AjaxMsg').ajaxStart(function() { $(this).slideDown(250); });
	$('#AjaxMsg').ajaxStop(function() { $(this).slideUp(250); });

	// Adding products to cart with ajax and refreshing of the minicart-tag (some things IE6-disabled)
	if ($("#ProductBuy").length) {
		$(".BuyForm").submit(function(event) {
			var protokolla = $(this).attr("action").split("://")[0];
			var prefix = (protokolla === "https" ? "https://www.topshot.fi" : "");
			$("#AjaxMsg").text("Lisätään tuote ostoskoriin"); 
			$(".AddToCart",".BuyForm").attr("disabled","disabled").children("span").text("Lisätään…");
			$(this).ajaxSubmit(function() {
				$("#ProductAddedNotification").slideUp(250, function() { $(this).remove(); });
				if (!($.browser.msie && parseInt($.browser.version)==6)) {
					
					$.get(prefix + "/interface/MiniCart", function(minicart) {
						$(".AddToCart",".BuyForm").attr("disabled","").children("span").text("Lisää ostoskoriin");
						$("#PageHeader").after('<div class="Notification Success" id="ProductAddedNotification"><p>Tuote ' + ProductName + ' lisättiin ostoskoriin onnistuneesti.</p><p><a href="/">Palaa etusivulle</a>, <a href="/cart/">näytä ostoskori</a> tai <a href="/checkout/">siirry kassalle</a>.</div>');
						$("#ProductAddedNotification").slideDown(250);
						$("#ShoppingCart").html(minicart).slideDown(250);
					});
					$("#ShoppingCart").slideUp(250);
				} else {
					$(".AddToCart",".BuyForm").attr("disabled","").children("span").text("Lisää ostoskoriin");
					$("#PageHeader").after('<div class="Notification Success" id="ProductAddedNotification"><p>Tuote ' + ProductName + ' lisättiin ostoskoriin onnistuneesti.</p><p><a href="/">Palaa etusivulle</a>, <a href="/cart/">näytä ostoskori</a> tai <a href="/checkout/">siirry kassalle</a>.</div>');
					$("#ProductAddedNotification").slideDown(250);
				}
			});
			event.preventDefault();
		});
	}
	
	// Removing products from minicart with ajax (IE6-disabled)
	if (!($.browser.msie && parseInt($.browser.version)==6)) {
		$("#ShoppingCart").delegate(".CartProductRemove a","click", function(event) {
			$("#AjaxMsg").text("Poistetaan tuote ostoskorista");
			var $parent = $(this).closest(".CartProduct");
			var rm = $(this).attr("href");
			$.get(rm, function() {
				$parent.slideUp(250, function() { $(this).remove(); });
				$.get("/interface/MiniCart", function(data) {
					var $subtotal = $("dd.SubTotal", data).html();
					$("#ShoppingCart dd.SubTotal").fadeOut(250, function() {
						if ($subtotal==null) {
							$("#ShoppingCart dd.SubTotal").html('0,<span class="PriceDecimals">00</span><span class="Currency">€</span>');
						} else {
							$("#ShoppingCart dd.SubTotal").html($subtotal);
						}
						$("#ShoppingCart dd.SubTotal").fadeIn(250);
					});
				});
			});
			event.preventDefault();
		});
	}

	// Categorynavigation openers
	$("ul.Categories li:has(> ul)").addClass("Openable").each(function() {
		if ($(this).hasClass("Current")) {
			$(this).prepend('<span class="NavOpener Opened" title="Piilota alakategoriat">-</span>');
		} else {
			$(this).prepend('<span class="NavOpener" title="Näytä alakategoriat">+</span>');
		}
		$("> .NavOpener", this).click(function() {
			$(this).next("a").next("ul").slideToggle(300);
			if ($(this).text() == "-" ) {
				$(this).text("+").attr("title","Näytä alakategoriat");
			} else {
				$(this).text("-").attr("title","Piilota alakategoriat");
			}
			$(this).toggleClass("Opened")
		});
	});

	// Productimageswapper via clik on thumbnail or changing the variation and the other way aroung
	if ($("#ProductImages").length) {
		$("#CurrentProductImage").prepend($('<span id="ImgLoader">Ladataan...</span>').hide());
		if ($("#ProductBuy .BuyFormVariationSelect").length) {
			$(".BuyFormVariationSelect select").change(function(event, triggered) {
				if (triggered==undefined) {
					var vName = $("option:selected", this).text();
					var vSplit = vName.split("(");
					var vTrim = vSplit[0].replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
					$("#ProductThumbnails li a").each(function() {
						var title = $(this).attr("title");
						var href = $(this).attr("href");
						var iTrim = title.replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
						var iSubstr = iTrim.substr(0,vTrim.length);
						var vSubstr = vTrim.substr(0,iTrim.length);
						if (iSubstr==vSubstr) {
							var triggered = true;
							$(this).trigger("click", triggered);
							return false;
						}
					});
				}
			});
		

		}
	}

});

