if(!window.sdg){sdg={};}sdg.productCarousel=function(a){a=$sd.extend({carouselSelector:"",wide:false,emphasised:false,lightBox:false,lightBoxURL:"",itemsVisible:1,scroll:1},a||{});
if(a.wide){$sd(a.carouselSelector).addClass("carouselWide");a.itemsVisible=4;a.itemsScroll=4;
}if(a.carouselSelector=="#carousel1"){a.itemsVisible=5;a.itemsScroll=5;}if(a.carouselSelector=="#carousel2"){a.itemsVisible=5;
a.itemsScroll=5;}if(a.carouselSelector=="#carousel3"){a.itemsVisible=5;a.itemsScroll=5;
}if(a.carouselSelector=="#carousel4"){a.itemsVisible=5;a.itemsScroll=5;}if(a.carouselSelector=="#carousel5"){a.itemsVisible=5;
a.itemsScroll=5;}if(a.carouselSelector=="#carousel6"){a.itemsVisible=5;a.itemsScroll=5;
}if(a.carouselSelector=="carouselPickNMix"){a.itemsVisible=1;a.itemsScroll=1;}if(a.emphasised){$sd(a.carouselSelector).addClass("carouselEmphasised");
}if(a.lightBox){$sd(a.carouselSelector+" ul a").each(function(){$sd(this).click(function(){containingLi=$sd(this).closest("li");
tb_show(containingLi.find("img").attr("alt"),a.lightBoxURL.replace("%%ID%%",containingLi.attr("rel"))+"&TB_iframe=true&height=500&width=820&tight=true",null);
return false;});});}if($sd(a.carouselSelector+" ul li").length){$sd(a.carouselSelector+" .carousel").jCarouselLite({speed:800,btnNext:a.carouselSelector+" .next",btnPrev:a.carouselSelector+" .prev",visible:a.itemsVisible,scroll:a.itemsScroll,circular:false,btnGo:a.carouselSelector+" .page",pagePlacement:a.carouselSelector+" .header",pageContainerClass:"pagination",pageItemsContainer:"ol",pageItemsClass:"page",pageItemSelectedClass:"selected",afterEnd:function(c,b){$sd(a.carouselSelector+" .page").parent().removeClass("selected");
$sd(a.carouselSelector+" .page").eq(b-1).parent().addClass("selected");}});}};var missNextIfAuto=false;
(function(d){$sd.fn.jCarouselLite=function(e){e=$sd.extend({btnPrev:null,btnNext:null,btnGo:null,mouseWheel:false,auto:null,speed:200,easing:null,vertical:false,circular:true,visible:3,start:0,scroll:1,pagePlacement:null,pageContainerClass:null,pageItemsContainer:null,pageItems:null,pageItemSelectedClass:null,pageItemsClass:null,beforeStart:null,afterEnd:null,afterBuild:null},e||{});
cl=this.each(function(){var i=false,f=e.vertical?"top":"left",g=e.vertical?"height":"width";
var p=d(this),n=d("ul",p),u=d("li",n),j=u.size(),l=e.visible;if(e.circular){n.prepend(u.slice(j-l-1+1).clone()).append(u.slice(0,l).clone());
e.start+=l;}var m=d("li",n),k=m.size(),x=e.start;p.css("visibility","visible");var r=e.vertical?"none":"left";
m.css({overflow:"hidden"}).css("float",r);n.css({margin:"0",padding:"0",position:"relative","list-style-type":"none","z-index":"1"});
p.css({overflow:"hidden",position:"relative","z-index":"2",left:"0px"});var z=e.vertical?a(m):c(m);
var y=(z*k);var o=(z*l)-1;n.css(g,y+"px").css(f,-(x*z));if(!e.vertical){var s=0;hideToGetSize=false;
if(p.parent().parent().css("display")=="none"){hideToGetSize=true;p.parent().parent().css({position:"absolute",left:"-15000px",display:"block"});
}m.each(function(v,A){h=d(A).height()?d(A).height():a(d(A));if(h>s){s=h;}});if(s){m.css("height",s+"px");
}if(hideToGetSize){p.parent().parent().css({position:"static",left:"auto",display:"none"});
}}m.filter(":last").addClass("last");if(e.pagePlacement){w(k);}if(e.btnPrev){d(e.btnPrev).click(function(){missNextIfAuto=true;
return t(x-e.scroll,false);});}if(e.btnNext){d(e.btnNext).click(function(){missNextIfAuto=true;
return t(x+e.scroll,false);});}if(e.btnGo){d(e.btnGo).each(function(v){var A=v+1;
d(this).click(function(){stepTo=(A*e.visible)-e.visible;return t(e.circular?e.visible+stepTo:stepTo,false);
});});}if(e.mouseWheel&&p.mousewheel){p.mousewheel(function(v,A){return A>0?t(x-e.scroll):t(x+e.scroll);
});}if(e.auto){setInterval(function(){t(x+e.scroll,true);},e.auto+e.speed);}function q(){return m.slice(x).slice(0,l);
}function t(A,v){if(!i&&((v==true&&!missNextIfAuto)||v==false)){if(e.beforeStart){e.beforeStart.call(this,q());
}if(e.circular){if(A<=e.start-l-1){n.css(f,-((k-(l*2))*z)+"px");x=A==e.start-l-1?k-(l*2)-1:k-(l*2)-e.scroll;
}else{if(A>=k-l+1){n.css(f,-((l)*z)+"px");x=A==k-l+1?l+1:l+e.scroll;}else{x=A;}}}else{if(A<0||A>=k){return false;
}else{x=A;}$sd("#currVal").val(A+1);}i=true;n.animate(f=="left"?{left:-(x*z)}:{top:-(x*z)},e.speed,e.easing,function(){if(e.afterEnd){e.afterEnd.call(this,q(),(x/e.visible)+1);
}i=false;});if(!e.circular){d(e.btnPrev+","+e.btnNext).removeClass("disabled");d((x-e.scroll<0&&e.btnPrev)||(x+e.scroll>k-l&&e.btnNext)||[]).addClass("disabled");
}}if(v){missNextIfAuto=false;}return false;}function w(G){if(d(e.pagePlacement).children("."+e.pageContainerClass).length){d(e.pagePlacement).children("."+e.pageContainerClass).remove();
}if(G<=e.visible){return;}var A=document.createElement("div");d(A).addClass(e.pageContainerClass);
d(e.pagePlacement).append(A);var D="";if(e.pageItemsContainer=="ol"||pageItemsContainer=="ul"){D="li";
}else{D=e.pageItems;}var J=document.createElement(e.pageItemsContainer);d(A).append(J);
for(var E=0;E<Math.ceil(G/e.visible);E++){var H=document.createElement(D);if(E==0){d(H).addClass(e.pageItemSelectedClass);
}d(H).append('<a href="#" class="'+e.pageItemsClass+'">'+(E+1)+"</a>");d(J).append(H);
(!d.browser.msie)?d(J).append("\n"):null;}var I;if(e.btnPrev){I=e.btnPrev.split(" ");
var v=I[I.length-1].replace(".","");var C=document.createElement(D);d(C).addClass(v);
d(C).append('<a href="#">Previous</a>');(!d.browser.msie)?d(J).prepend("\n"):null;
d(J).prepend(C);}if(e.btnNext){I=e.btnNext.split(" ");var B=I[I.length-1].replace(".","");
var F=document.createElement(D);d(F).addClass(B);d(F).append('<a href="#">Next</a>');
d(J).append(F);(!d.browser.msie)?d(J).append("\n"):null;}}});if(e.afterBuild){e.afterBuild.call(this);
}return cl;};function b(e,f){return parseInt($sd.css(e[0],f))||0;}function c(e){return parseInt(e.css("width"))+parseInt(e.css("padding-left"))+parseInt(e.css("padding-right"))+parseInt(e.css("margin-left"))+parseInt(e.css("margin-right"));
}function a(e){return parseInt(e.css("height"))+parseInt(e.css("padding-top"))+parseInt(e.css("padding-bottom"))+parseInt(e.css("margin-top"))+parseInt(e.css("margin-bottom"));
}})(jQuery);
