$(function() {
// 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('
EdellisetSeuraavat');
$("#CrossSaleProducts").css("width","2304px");
var $prev = $('#ScrollToPrev'), $next = $('#ScrollToNext'), $scp = $('#CrossSaleScroller');
$scp.serialScroll({
items: '.Product',
prev: '#ScrollToPrev',
next: '#ScrollToNext',
axis: 'x',
duration: 350,
force: true,
step: 3,
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 });
$('').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) {
$("#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("/interface/MiniCart", function(minicart) {
$(".AddToCart",".BuyForm").attr("disabled","").children("span").text("Lisää ostoskoriin");
$("#PageHeader").after('');
$("#ProductAddedNotification").slideDown(250);
$("#MiniCartWrapper").html(minicart).slideDown(250);
});
$("#MiniCartWrapper").slideUp(250);
} else {
$(".AddToCart",".BuyForm").attr("disabled","").children("span").text("Lisää ostoskoriin");
$("#PageHeader").after('');
$("#ProductAddedNotification").slideDown(250);
}
});
event.preventDefault();
});
}
// Removing products from minicart with ajax (IE6-disabled)
if (!($.browser.msie && parseInt($.browser.version)==6)) {
$("#MiniCartWrapper").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();
$("#MiniCartWrapper dd.SubTotal").fadeOut(250, function() {
if ($subtotal==null) {
$("#MiniCartWrapper dd.SubTotal").html('0,00€');
} else {
$("#MiniCartWrapper dd.SubTotal").html($subtotal);
}
$("#MiniCartWrapper dd.SubTotal").fadeIn(250);
});
});
});
event.preventDefault();
});
}
// Categorynavigation openers
$("ul.Categories li:has(> ul)").addClass("Openable").each(function() {
if ($(this).hasClass("Current")) {
$(this).prepend('-');
} else {
$(this).prepend('+');
}
$("> .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($('Ladataan...').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;
}
});
}
});
$("#ProductThumbnails li a").click(function(event, triggered) {
event.preventDefault();
var title = $(this).attr("title");
var href = $(this).attr("href");
var src = $("#CurrentProductImage img").attr("src");
var sizeArr = src.split("/");
var targetSize = sizeArr[2];
var tnSrc = href.split("/");
var targetImg = tnSrc[3];
var newImg = "/tuotekuvat/"+targetSize+"/"+targetImg;
SwapImg(newImg,href,title);
if (triggered==undefined) {
var iTrim = title.replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
$(".BuyFormVariationSelect select option").each(function() {
var vName = $(this).text();
var vSplit = vName.split("(");
var vTrim = vSplit[0].replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
var iSubstr = iTrim.substr(0,vTrim.length);
var vSubstr = vTrim.substr(0,iTrim.length);
if (vSubstr==iSubstr) {
var triggered = true;
$(this).attr("selected","selected");
return false;
}
});
}
});
$("#ProductBuy .BuyFormVariationSelect select").trigger("change");
} else {
$("#ProductBuy .BuyFormVariationRadio input").click(function(event, triggered) {
if (triggered==undefined) {
var vName = $(this).parent("label").text();
var vTrim = vName.replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
$("#ProductThumbnails li a").each(function() {
var iTrim = $(this).attr("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;
}
});
}
});
$("#ProductThumbnails li a").click(function(event, triggered) {
event.preventDefault();
var title = $(this).attr("title");
var href = $(this).attr("href");
var src = $("#CurrentProductImage img").attr("src");
var sizeArr = src.split("/");
var targetSize = sizeArr[2];
var tnSrc = href.split("/");
var targetImg = tnSrc[3];
var newImg = "/tuotekuvat/"+targetSize+"/"+targetImg;
SwapImg(newImg,href,title);
if (triggered==undefined) {
var iTrim = title.replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
$("#ProductBuy .BuyFormVariationRadio input").each(function() {
var vName = $(this).parent("label").text();
var vTrim = vName.replace(/^[ \t]+|[ \t]+$/,"").toLowerCase();
var iSubstr = iTrim.substr(0,vTrim.length);
var vSubstr = vTrim.substr(0,iTrim.length);
if (vSubstr==iSubstr) {
var triggered = true;
$(this).trigger("click", triggered);
return false;
}
});
}
});
if ($("#ProductBuy .BuyFormVariationRadio").length) { $("#ProductBuy .BuyFormVariationRadio input:checked").trigger("click"); }
}
}
});
// Imageswapperscript
function SwapImg(i,href,title) {
if ($("#CurrentProductImage img").attr("src") != i) {
$("#CurrentProductImage img").fadeOut(200, function() {
$("#ImgLoader").fadeIn(100, function() {
$("#CurrentProductImage img").attr("src",i).load(function() {
$("#ImgLoader").fadeOut(100, function() {
$("#CurrentProductImage img").fadeIn(200);
});
}).each(function() {
if (this.complete && $.browser.msie) {
$(this).trigger("load");
}
});
});
});
$("#ProductImageCaption").html(title);
$("#CurrentProductImage img").attr("alt",title);
$("#CurrentProductImage").attr("title",title);
$("#CurrentProductImage").attr("href",href);
}
}