var CommercialSlider=function(){function n(n){var t=$(".commercial-slider");t.slick({slidesToShow:1,slidesToScroll:1,autoplay:!0,autoplaySpeed:n,infinite:!0,fade:!0,easing:"ease-in-out",dots:!0});t.css("display","block")}return{init:n}}(),ConfirmationSlider=function(){function n(){t()}function t(){$(".confirmation-slider").off("click",".confirmation-slider-change");$(".confirmation-slider").on("click",".confirmation-slider-change",function(n){n.preventDefault();var t=$(this),i=t.attr("href"),r=t.data("target");$.getJSON(i,null,function(n){$(r).html(n)})})}return{init:n}}(),CategoryMenu=function(){function h(i,h){var l=$(i),a=l.find(".category-menu-content > ul"),v=!1;l.on("click",".category-menu-content > ul > li",function(n){var t,i;$(n.target).hasClass("close")?u($(".collapsible-menu:visible"),l,a,!0):(a.find("li").removeClass("active"),t=$(this),t.addClass("active"),i=t.find(".collapsible-menu"),e(i,l))});if(a.hasClass("hide")){t(l,!1,!1);l.find(".category-menu-content > .title").addClass("pointer");l.on("click",".category-menu-content > .title",function(){a.hasClass("hide")?c(a,l):o(a,l)});v=!0}else t(l,!0,!1);if(h)$("body").on("click",function(n){$(n.target).parents(".category-menu").size()===0&&(v?o(a,l):u($(".collapsible-menu:visible"),l,a,!0))});else s();r<=n&&s();f(l,a)}function f(n,t){function i(n){var t=$(n),i=t.children(".collapsible-menu");t.children("li").addClass("active");e(i,$("#category-menu"))}function r(i){var r=$(i),f=r.children(".collapsible-menu");r.find("li").removeClass("active");u(f,n,t,!1)}t.menuAim({activate:i,deactivate:r})}function e(n,r){n&&n.length>0&&!i&&(n.removeClass("hide"),l(n),t(r,!0,!0),i=!0)}function u(n,r,u,e){i&&(u.find("li").removeClass("active"),n.addClass("hide"),t(r,!0,!1),i=!1,e&&f(r,u))}function c(n,i){n&&n.length>0&&(n.removeClass("hide"),t(i,!0,!1))}function o(n,i){n.addClass("hide");t(i,!1,!1)}function l(t){if(r>n){t.width(r-n-40);t.css("left",n-3);var u=$(".category-menu-content > ul > li").length,f=$(".collapsible-menu:visible").find(".visible-xs").find("li").length,i=Stoneasy.getResponsiveSize(),e=i==="xs"?1:i==="sm"?2:3;f<=(u-1)*e&&t.css("bottom",0)}else t.width(n/2),t.css("left",n/2-43)}function s(){$(".category-menu .category-menu-content > ul").css("position","inherit");$(".category-menu .category-menu-content > ul").css("border","none");$(".category-menu .collapsible-menu").css("top",0);$(".category-menu .collapsible-menu").css("min-height","100%");$(".category-menu .collapsible-menu").css("margin-bottom","0")}function t(n,t,i){n.find(".category-menu-content").css("border-radius",4);n.find(".category-menu-content > .title").css("border-radius",4);t&&(n.find(".category-menu-content").css("border-bottom-left-radius",0),n.find(".category-menu-content").css("border-bottom-right-radius",0),n.find(".category-menu-content > .title").css("border-bottom-left-radius",0),n.find(".category-menu-content > .title").css("border-bottom-right-radius",0));i&&(n.find(".category-menu-content").css("border-top-right-radius",0),n.find(".category-menu-content > .title").css("border-top-right-radius",0))}var i=!1,r=$(".container").width(),n=$(".category-menu").width();return{init:h}}(),SmartSearch=function(){function t(){var i=$("#smart-search"),t=$("#smart-search-result");i.on("keyup","[name='q']",function(){var r=$(this).val();clearTimeout(n);n=setTimeout(function(){r.length>=3&&$.getJSON(t.data("action"),{searchProduct:r},function(n){if(n.isSuccess!==!1){t.html(n.viewSmartSearchResult);t.removeClass("hide");var r=$(".nt-modal-overlay-search");if(r.length===0){$("<div class='nt-modal-overlay-search'><\/div>").hide().prependTo("body").fadeIn(100);$(".nt-modal-overlay-search").on("click",function(){$(this).remove();t.addClass("hide")});i.find(".input-group").css("z-index",999)}}})},300)})}var n;return{init:t}}(),FilterBox=function(){function n(){$("#filter-box").off("click",".filter-toggle");$("#filter-box").on("click",".filter-toggle",function(){var i=$(this),r=i.closest(".filter-group"),t=r.find(".filter-items"),n=t.is(":visible"),u=i.find("i");u.toggleClass("glyphicon-chevron-right",n);u.toggleClass("glyphicon-chevron-down",!n);n?t.hide():t.show();r.find(".js-is-open").val(!n)});$("#filter-box").off("click",".more-toggle");$("#filter-box").on("click",".more-toggle",function(){var i=$(this),n=i.closest(".filter-group"),t=n.find(".filter-items");t.find(".more-toggle").hide();t.find(".more").show();n.find(".js-is-more").val(!1)})}return{init:n}}(),CustomerStatusMenu=function(){function n(){t();i();r();u()}function t(){$(".nt-user").on("click","#customer-status-link",function(){var n=$("#customer-status-content");n.is(":visible")?n.hide():n.show()})}function i(){var i=document.getElementById("graph"),t,e,u;if(i!==null){var n={percent:i.getAttribute("data-percent")||25,size:i.getAttribute("data-size")||220,lineWidth:i.getAttribute("data-line")||15,rotate:i.getAttribute("data-rotate")||0},r=document.createElement("canvas"),f=document.createElement("span");f.textContent=n.percent+"%";typeof G_vmlCanvasManager!="undefined"&&G_vmlCanvasManager.initElement(r);t=r.getContext("2d");r.width=r.height=n.size;i.appendChild(f);i.appendChild(r);t.translate(n.size/2,n.size/2);t.rotate((-1/2+n.rotate/180)*Math.PI);e=(n.size-n.lineWidth)/2;u=function(n,i,r){r=Math.min(Math.max(0,r||1),1);t.beginPath();t.arc(0,0,e,0,Math.PI*2*r,!1);t.strokeStyle=n;t.lineCap="square";t.lineWidth=i;t.stroke()};u("#EFEFEF",n.lineWidth,1);u("#D47F02",n.lineWidth,n.percent/100)}}function r(){$("body").on("click",function(n){if(!$(n.target).closest(".nt-user").length){var t=$("#customer-status-content");t.is(":visible")&&t.hide()}})}function u(){$(".nt-user").on("click",".js-logoff",function(n){n.preventDefault();$(this).parents("form").submit()})}return{init:n}}(),vueMailDestination=Vue.component("vue-mail-destination",{props:{singleItem:{type:Boolean},mailAddressTypeId:{type:Number},mailTypeId:{type:Number},mailTemplateId:{type:Number},organisationId:{type:Number},placeholder:{type:String},fieldName:{type:String}},data:function(){return{loading:!0,mailDestinationConfig:[]}},mounted:function(){var t=this,i=this.organisationId,e=this.mailTypeId,o=this.mailAddressTypeId,r=this.$el.querySelector("select"),n=this,u=function(n){if(n==="")return!1;var t=new RegExp("^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$");return t.test(n)===!1?!1:!0},f=function(n){$(n).select2({placeholder:this.placeholder,tags:!0,minimumInputLength:3,ajax:{url:"/api/mailtemplates/maildestinationlookup",data:function(n){return{organisationId:i,query:n.term}},cache:!0,delay:200,processResults:function(n){return n===null?null:(console.log(n),{results:n})},dataType:"json"},createTag:function(n){var t=$.trim(n.term);return u(t)===!1?null:{id:"||"+t,text:t}}})};MailTemplateService.getMailDestinationConfig(this.organisationId,this.mailAddressTypeId,this.mailTypeId).then(function(i){t.productGroupList=i.data;n.mailDestinationConfig=i.data;f(r);n.loading=!1})},template:'\n            <div class="c-mail-destination">\n                <select class="form-control" :multiple="!singleItem" :disabled="loading" :name="fieldName">\n                  <option v-for="option in mailDestinationConfig" v-bind:value="option.id" selected>\n                    {{ option.text }}\n                  <\/option>\n                <\/select>\n            <\/div>'}),vueCategoryGallery=Vue.component("vue-category-gallery",{props:{action:{type:String,required:!0},title:{type:String},showTopSeparator:{type:Boolean},showBottomSeparator:{type:Boolean}},data:function(){return{categoryList:[]}},mounted:function(){var n=this;CategoryService.getGalleryCategoryList(this.action).then(function(t){n.categoryList=t.data})},template:'\n            <div class="c-category-gallery" v-if="categoryList.length > 0">\n                <hr class="light" v-if="showTopSeparator">\n                <h3>{{ title }}<\/h3>\n                <div class="row">\n                    <div class="col-md-3 col-sm-4" v-for="category in categoryList" :key="category.id">\n                        <div class="c-category-gallery__item">\n                            <img :src="category.imageUrl" :alt="category.name" class="img-responsive" loading="lazy"><\/img>\n                            <div class="c-category-gallery__item-content">\n                                <h4>{{ category.name }}<\/h4>\n                                <ul class="list-unstyled">\n                                    <li v-for="subCategory in category.subCategoryList" :key="subCategory.id">\n                                        <a :href="subCategory.categoryUrl" v-if="subCategory.showCategoryUrl">{{ subCategory.name }}<\/a>\n                                    <\/li>\n                                <\/ul>\n                                <a :href="category.categoryUrl" v-if="category.showCategoryUrl">{{ category.detailName }}<\/a>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n                <hr class="light" v-if="showBottomSeparator">\n            <\/div>'}),vueProductGroupGallery=Vue.component("vue-productgroup-gallery",{props:{action:{type:String,required:!0},title:{type:String},subtitle:{type:String},showTopSeparator:{type:Boolean},showBottomSeparator:{type:Boolean}},data:function(){return{productGroupList:[]}},mounted:function(){var n=this;ProductGroupService.getGalleryProductGroupList(this.action).then(function(t){n.productGroupList=t.data})},template:'\n            <div class="c-productgroup-gallery" v-if="productGroupList.length > 0">\n                <hr class="light" v-if="showTopSeparator">\n                <h3>{{ title }}<\/h3>\n                <h4 v-if="subtitle">{{ subtitle }}<\/h4>\n                <div class="row">\n                    <div class="col-md-2 col-sm-6" v-for="productGroup in productGroupList" :key="productGroup.id">\n                        <div class="c-productgroup-gallery__item text-center">\n                            <a :href="productGroup.productGroupUrl">\n                                <img :src="productGroup.imageUrl" :alt="productGroup.name" class="img-responsive" loading="lazy"><\/img>\n                                <p class="c-productgroup-gallery__item-text">{{ productGroup.name }}<\/p>\n                            <\/a>\n                        <\/div>\n                    <\/div>\n                <\/div>\n                <hr class="light" v-if="showTopSeparator">\n            <\/div>'}),vueProductGroupSlider=Vue.component("vue-productgroup-slider",{props:{action:{type:String,required:!0},title:{type:String},subtitle:{type:String},showTopSeparator:{type:Boolean},showBottomSeparator:{type:Boolean}},data:function(){return{productGroupList:[]}},mounted:function(){var n=this;ProductGroupService.getSliderProductGroupList(this.action).then(function(t){n.productGroupList=t.data})},template:'\n            <div class="c-productgroup-slider" v-if="productGroupList.length > 0">\n                <hr class="light" v-if="showTopSeparator">\n                <h3>{{ title }}<\/h3>\n                <h4 v-if="subtitle">{{ subtitle }}<\/h4>\n                <div class="c-productgroup-slider__list">\n                    <div class="c-productgroup-slider__list-item text-center" v-for="productGroup in productGroupList" :key="productGroup.id">\n                        <a :href="productGroup.productGroupUrl">\n                            <div class="c-productgroup-slider__list-item-image-wrapper">\n                                <img :src="productGroup.imageUrl" :alt="productGroup.name" class="img-responsive" loading="lazy"><\/img>\n                            <\/div>\n                            <p>{{ productGroup.name }}<\/p>\n                            <p v-if="productGroup.subName">{{ productGroup.subName }}<\/p>\n                            <span class="text-muted">{{ productGroup.size }}<\/span>\n                        <\/a>\n                    <\/div>\n                <\/div>\n                <hr class="light" v-if="showTopSeparator">\n            <\/div>'}),galleryComponentsElement=document.getElementById("vue-gallery-components"),vueGalleryComponents,sliderComponentsElement,vueSliderComponents,mailDestinationComponentsElement,mailDestinationComponents;galleryComponentsElement!==null&&(vueGalleryComponents=new Vue({el:"#vue-gallery-components",components:{"vue-category-gallery":vueCategoryGallery,"vue-productgroup-gallery":vueProductGroupGallery}}));sliderComponentsElement=document.getElementById("vue-slider-components");sliderComponentsElement!==null&&(vueSliderComponents=new Vue({el:"#vue-slider-components",components:{"vue-productgroup-slider":vueProductGroupSlider}}));mailDestinationComponentsElement=document.getElementById("vue-mail-destination-components");mailDestinationComponentsElement!==null&&(mailDestinationComponents=new Vue({el:"#vue-mail-destination-components",components:{"vue-mail-destination":vueMailDestination}}));Vue.filter("translation",function(n,t,i){var r=_.find(i,function(n){return n.name===t});return r===null||typeof r=="undefined"?n:r.value})