(function(){"use strict";var t,r,i,n=function(n,t){return function(){return n.apply(t,arguments)}};t=jQuery;r=function(){function n(){}return n.transitions={webkitTransition:"webkitTransitionEnd",mozTransition:"mozTransitionEnd",oTransition:"oTransitionEnd",transition:"transitionend"},n.transition=function(n){var r,t,u,i;r=n[0];t=this.transitions;for(i in t)if(u=t[i],r.style[i]!=null)return u},n}();i=function(){function i(r){r==null&&(r={});this.container=n(this.container,this);this.content=n(this.content,this);this.html=n(this.html,this);this.$growl=n(this.$growl,this);this.$growls=n(this.$growls,this);this.animate=n(this.animate,this);this.remove=n(this.remove,this);this.dismiss=n(this.dismiss,this);this.present=n(this.present,this);this.waitAndDismiss=n(this.waitAndDismiss,this);this.cycle=n(this.cycle,this);this.close=n(this.close,this);this.click=n(this.click,this);this.mouseLeave=n(this.mouseLeave,this);this.mouseEnter=n(this.mouseEnter,this);this.unbind=n(this.unbind,this);this.bind=n(this.bind,this);this.render=n(this.render,this);this.settings=t.extend({},i.settings,r);this.$growls().attr("class",this.settings.location);this.render()}return i.settings={namespace:"growl",duration:3200,close:"&#215;",location:"default",style:"default",size:"medium",delayOnHover:!0},i.growl=function(n){return n==null&&(n={}),this.initialize(),new i(n)},i.initialize=function(){return t("body:not(:has(#growls))").append('<div id="growls" />')},i.prototype.render=function(){var n;n=this.$growl();this.$growls().append(n);this.settings.fixed?this.present():this.cycle()},i.prototype.bind=function(n){n==null&&(n=this.$growl());n.on("click",this.click);if(this.settings.delayOnHover){n.on("mouseenter",this.mouseEnter);n.on("mouseleave",this.mouseLeave)}return n.on("contextmenu",this.close).find("."+this.settings.namespace+"-close").on("click",this.close)},i.prototype.unbind=function(n){return n==null&&(n=this.$growl()),n.off("click",this.click),this.settings.delayOnHover&&(n.off("mouseenter",this.mouseEnter),n.off("mouseleave",this.mouseLeave)),n.off("contextmenu",this.close).find("."+this.settings.namespace+"-close").off("click",this.close)},i.prototype.mouseEnter=function(){var n;return n=this.$growl(),n.stop(!0,!0)},i.prototype.mouseLeave=function(){return this.waitAndDismiss()},i.prototype.click=function(n){if(this.settings.url!=null)return n.preventDefault(),n.stopPropagation(),window.open(this.settings.url)},i.prototype.close=function(n){var t;return n.preventDefault(),n.stopPropagation(),t=this.$growl(),t.stop().queue(this.dismiss).queue(this.remove)},i.prototype.cycle=function(){var n;return n=this.$growl(),n.queue(this.present).queue(this.waitAndDismiss())},i.prototype.waitAndDismiss=function(){var n;return n=this.$growl(),n.delay(this.settings.duration).queue(this.dismiss).queue(this.remove)},i.prototype.present=function(n){var t;return t=this.$growl(),this.bind(t),this.animate(t,this.settings.namespace+"-incoming","out",n)},i.prototype.dismiss=function(n){var t;return t=this.$growl(),this.unbind(t),this.animate(t,this.settings.namespace+"-outgoing","in",n)},i.prototype.remove=function(n){return this.$growl().remove(),typeof n=="function"?n():void 0},i.prototype.animate=function(n,t,i,u){var f;if(i==null&&(i="in"),f=r.transition(n),n[i==="in"?"removeClass":"addClass"](t),n.offset().position,n[i==="in"?"addClass":"removeClass"](t),u!=null)if(f!=null)n.one(f,u);else u()},i.prototype.$growls=function(){return this.$_growls!=null?this.$_growls:this.$_growls=t("#growls")},i.prototype.$growl=function(){return this.$_growl!=null?this.$_growl:this.$_growl=t(this.html())},i.prototype.html=function(){return this.container(this.content())},i.prototype.content=function(){return"<div class='"+this.settings.namespace+"-close'>"+this.settings.close+"<\/div>\n<div class='"+this.settings.namespace+"-title'>"+this.settings.title+"<\/div>\n<div class='"+this.settings.namespace+"-message'>"+this.settings.message+"<\/div>"},i.prototype.container=function(n){return"<div class='"+this.settings.namespace+" "+this.settings.namespace+"-"+this.settings.style+" "+this.settings.namespace+"-"+this.settings.size+"'>\n  "+n+"\n<\/div>"},i}();this.Growl=i;t.growl=function(n){return n==null&&(n={}),i.growl(n)};t.growl.error=function(n){var i;return n==null&&(n={}),i={title:"Error!",style:"error"},t.growl(t.extend(i,n))};t.growl.notice=function(n){var i;return n==null&&(n={}),i={title:"Notice!",style:"notice"},t.growl(t.extend(i,n))};t.growl.warning=function(n){var i;return n==null&&(n={}),i={title:"Warning!",style:"warning"},t.growl(t.extend(i,n))}}).call(this);window.mmiSite={},function(n,t){t.const={PROGRAM:"<program-name>",REQUEST_TIMEOUT:2e4,CATALOG_CONTROLLER:"Catalog"};t.setConstant=function(n,i){t.const[n]=i};t.getConstant=function(n){return t.const[n]};t.initList=[];t.addInitialiser=function(n){typeof n=="function"&&t.initList.push(n)};t.processInitQueue=function(){if(this.initList.length>0)for(var n=0;n<this.initList.length;n++)t.initList[n]()};t.addChildInit=function(n){typeof n.selector!="undefined"?t.selectorExists(n.selector)&&t.addInitialiser(n.init):t.addInitialiser(n.init)};t.selectorExists=function(t){return n(t).length>0};t.makeRequest=function(i,r,u,f,e,o){i=i.toUpperCase();n.ajax({type:i,url:r,data:JSON.stringify(u),contentType:"application/json",timeout:t.const.REQUEST_TIMEOUT}).done(function(n){typeof f=="function"&&f(n)}).fail(function(n){console.debug("Error: ",n);typeof e=="function"&&e(n)}).always(function(n){typeof o=="function"&&o(n)})};t.surfaceRequest=function(n,i,r,u,f,e){t.const.PROGRAM!="<program-name>"?(i="/umbraco/surface/"+t.const.PROGRAM+"/"+i,t.makeRequest(n,i,r,u,f,e)):console.debug("There needs to be a loyalty program specified.")};t.apiRequest=function(n,i,r,u,f,e,o){typeof i!="undefined"&&i!=""?(r="/umbraco/api/"+i+"/"+r,t.makeRequest(n,r,u,f,e,o)):console.debug("There needs to be an API controller specified.")};t.notifySuccess=function(t){n.growl({title:"Success",message:t})};t.notifyFailure=function(t,i){console.debug("Errors: ",i);n.growl.error({title:"Error",message:t})};t.notifyWarning=function(t){n.growl.warning({title:"Warning",message:t})};t.updatePointsBalanceTop=function(){t.selectorExists("#point-balance-top")&&t.surfaceRequest("get","ShowPointsBalance",null,function(t){n("#point-balance-top").html(t)})};t.updateAvailablePointsBalance=function(){t.selectorExists(".available-points-balance")&&t.surfaceRequest("get","ShowPointsBalance",null,function(t){n(".available-points-balance").html(t)})};t.updateCartCount=function(){t.selectorExists("#cart-count")&&t.makeRequest("get","/umbraco/surface/Catalog/GetCartCount",null,function(t){n("#cart-count").html(t)})};t.refreshPointsBalance=function(){t.selectorExists("#point-balance-partial")?t.surfaceRequest("get","HandlePointsBalanceSmallPartial",null,function(t){n("#point-balance-partial").html(t)}):console.debug("Points balance partial is not rendered.");t.updateAvailablePointsBalance()};t.createLink=function(t,i){for(var f=window.location.pathname.split("/"),u="",r=0;r<f.length;r++)r>0&&r<3&&(u=u+"/"+f[r]);n(i).attr("href",u+t)};jQuery.ajaxSetup({cache:!1,headers:{"If-Modified-Since":"Mon, 26 Jul 1997 05:00:00 GMT","Cache-Control":"no-cache",Pragma:"no-cache"}})}(jQuery,window.mmiSite)