1jQuery(function ($) { 2 3 let html = $("html"); 4 let body = $("body"); 5 let modal = $(".modal"); 6 let header = $(".navbar-header"); 7 let nonHomeMenuWrapper = $(".non-home-menu-wrapper"); 8 9 /* WRAP TABLE FROM WYSIWYG*/ 10 $(".wysiwyg-styles > table").wrap("<div class=\"wysiwyg-table-wrapper\"></div>"); 11 /*END WRAP TABLE FROM WYSIWYG*/ 12 13 /*HEIGHT SLIDER TRANSITION*/ 14 body.on('slide.bs.carousel', '.carousel', function (e) { 15 let nextH = $(e.relatedTarget).height(); 16 $(this).find('.active.carousel-item').parent().animate({ 17 height: nextH 18 }, 500); 19 }); 20 $(window).on('hidden.bs.modal', function () { 21 $('.carousel .carousel-inner').css("height", "auto"); 22 }); 23 $(window).resize(function () { 24 $('.carousel .carousel-inner').css("height", "auto"); 25 }); 26 /*END HEIGHT SLIDER TRANSITION*/ 27 28 /*SHOW SLIDE BY PREVIEW CLICK*/ 29 let imageNumber; 30 let slideNumber; 31 body.on("click", ".slider-image-link", function () { 32 imageNumber = $(this).attr('data-counter'); 33 $('.image-modal-window').find('.carousel-item').each(function () { 34 $(this).removeClass('active'); 35 slideNumber = $(this).attr("data-counter"); 36 if (slideNumber === imageNumber) { 37 $(this).addClass('active'); 38 } 39 }); 40 }); 41 /*END SHOW SLIDE BY PREVIEW CLICK*/ 42 43 /*CLOSE MODAL FIX*/ 44 body.on('click', ".image-modal-window .align-modal-helper", function (e) { 45 if (e.target !== this) return; 46 $(this).parents('.image-modal-window').find('.modal-cross').trigger('click'); 47 }); 48 body.on('click', ".image-modal-window .modal-content", function (e) { 49 if (e.target !== this) return; 50 $(this).parents('.image-modal-window').find('.modal-cross').trigger('click'); 51 }); 52 /*CLOSE MODAL FIX*/ 53 54 /*OVERFLOW MODAL FIX*/ 55 modal.on('shown.bs.modal', function () { 56 body.removeClass('modal-open'); 57 html.addClass('modal-open'); 58 }); 59 modal.on('hidden.bs.modal', function () { 60 html.removeClass('modal-open'); 61 }); 62 /*END OVERFLOW MODAL FIX*/ 63 64 // MOBILE MENU 65 let mobileMenu = $(".mobile-menu"); 66 let mobileBackground = $(".mobile-background"); 67 body.on("click", ".burger-toggle", function (e) { 68 e.preventDefault(); 69 mobileMenu.removeClass("d-none"); 70 mobileBackground.removeClass("d-none"); 71 setTimeout(function () { 72 mobileMenu.toggleClass("mobile-menu-hidden"); 73 mobileBackground.toggleClass("mobile-background-hidden"); 74 if (!header.hasClass("navbar-header-search-opened")) { 75 html.toggleClass('modal-open'); 76 } 77 header.toggleClass('navbar-header-opened'); 78 if (!mobileMenu.hasClass("mobile-menu-hidden")) { 79 getCurrentScrollData(); 80 } else { 81 disablingScrollFreezing(); 82 setTimeout(function () { 83 mobileMenu.addClass("d-none"); 84 mobileBackground.addClass("d-none"); 85 }, 200); 86 } 87 }, 10); 88 }); 89 $(window).on("resize", function () { 90 if (!mobileMenu.hasClass("mobile-menu-hidden") && $(window).width() > 601) { 91 mobileMenu.addClass("mobile-menu-hidden").addClass("d-none"); 92 mobileBackground.addClass("mobile-background-hidden").addClass("d-none"); 93 header.removeClass('navbar-header-opened'); 94 html.removeClass("modal-open"); 95 disablingScrollFreezing(); 96 } 97 }); 98 body.on("click", ".mobile-background", function () { 99 mobileMenu.addClass("mobile-menu-hidden"); 100 mobileBackground.addClass("mobile-background-hidden"); 101 setTimeout(function () { 102 mobileMenu.addClass("d-none"); 103 mobileBackground.addClass("d-none"); 104 }, 200); 105 html.toggleClass('modal-open'); 106 header.toggleClass('navbar-header-opened'); 107 }); 108 109 // END MOBILE MENU 110 111 // BANNER MODAL 112 let bannerModal; 113 let bannerID; 114 body.on("click", ".banner-modal-opener", function (e) { 115 e.preventDefault(); 116 bannerID = $(this).data("banner-id"); 117 bannerModal = $(".banner-modal[data-banner-id=" + bannerID + "]"); 118 bannerModal.addClass("banner-modal-visible"); 119 html.addClass('modal-open'); 120 getCurrentScrollData(); 121 }); 122 body.on("click", ".banner-modal-closer", function (e) { 123 e.preventDefault(); 124 closeBannerModal(); 125 }); 126 body.on("click", ".banner-modal", function (e) { 127 if ($(e.target).hasClass("banner-modal")) closeBannerModal(); 128 }); 129 130 function closeBannerModal() { 131 $(".banner-modal").removeClass("banner-modal-visible"); 132 html.removeClass('modal-open'); 133 disablingScrollFreezing(); 134 } 135 136 // END BANNER MODAL 137 138 // SHARE MODAL 139 let shareModal; 140 body.on("click", ".share-modal-opener", function (e) { 141 e.preventDefault(); 142 shareModal = $(".share-modal"); 143 shareModal.addClass("share-modal-visible"); 144 html.addClass('modal-open'); 145 getCurrentScrollData(); 146 }); 147 body.on("click", ".share-modal-closer", function (e) { 148 e.preventDefault(); 149 closeShareModal(); 150 }); 151 body.on("click", ".share-modal", function (e) { 152 if ($(e.target).hasClass("share-modal")) closeShareModal(); 153 }); 154 155 function closeShareModal() { 156 shareModal.removeClass("share-modal-visible"); 157 html.removeClass('modal-open'); 158 disablingScrollFreezing(); 159 } 160 161 // END SHARE MODAL 162 163 // PREVENT BACKGROUND SCROLL
164 let currentWindowScrollPosition; 165 let checkCurrentWindowScrollPosition = false; 166 window.addEventListener('scroll', function (e) { 167 if (checkCurrentWindowScrollPosition === true && currentWindowScrollPosition !== $(document).scrollTop()) { 168 e.preventDefault(); 169 } 170 }); 171 172 let getCurrentScrollData = function () { 173 checkCurrentWindowScrollPosition = true; 174 currentWindowScrollPosition = $(document).scrollTop(); 175 }; 176 177 let disablingScrollFreezing = function () { 178 checkCurrentWindowScrollPosition = false; 179 }; 180 // END PREVENT BACKGROUND SCROLL 181 182 // EXTRA CLASSES 183 let screenWidth; 184 let lastScroll; 185 let scrollDistance 186 let homeHero = $(".home-hero"); 187 188 function headerScrollingCondition() { 189 if (lastScroll > scrollDistance) { 190 header.addClass("navbar-scrolled background-white"); 191 if ($(".home-page").length > 0) { 192 homeHero.find(".hero-sidebar-wrapper").addClass("hero-sidebar-wrapper-scrolled-menu"); 193 homeHero.find(".hero-content-wrapper").addClass("hero-content-wrapper-scrolled-menu"); 194 } else { 195 nonHomeMenuWrapper.addClass("non-home-menu-wrapper-scrolled"); 196 } 197 } else { 198 header.removeClass("navbar-scrolled background-white"); 199 if ($(".home-page").length > 0) { 200 homeHero.find(".hero-sidebar-wrapper").removeClass("hero-sidebar-wrapper-scrolled-menu"); 201 homeHero.find(".hero-content-wrapper").removeClass("hero-content-wrapper-scrolled-menu"); 202 } else { 203 nonHomeMenuWrapper.removeClass("non-home-menu-wrapper-scrolled"); 204 } 205 } 206 } 207 208 function scrollingClassesForHeader() { 209 screenWidth = $(window).width(); 210 lastScroll = $(window).scrollTop(); 211 scrollDistance = (screenWidth > 600) ? 24 : 0; 212 headerScrollingCondition(); 213 $(window).on("scroll", function () { 214 lastScroll = $(this).scrollTop(); 215 headerScrollingCondition(); 216 }); 217 } 218 219 body.on("click", ".hero-sidebar-wrapper-scrolled-menu .hero-sidebar-title", function () { 220 let heroSidebarTitle = $(this); 221 let heroSidebarTitleDropdown = heroSidebarTitle.siblings(".hero-sidebar-dropdown"); 222 223 heroSidebarTitle.toggleClass("hero-sidebar-title-opened"); 224 heroSidebarTitleDropdown.toggleClass("non-home-dropdown-list-visible"); 225 }); 226 227 scrollingClassesForHeader(); 228 $(window).on("resize", function () { 229 scrollingClassesForHeader(); 230 }); 231 // END EXTRA CLASSES 232 233 // SCROLL TO TOP 234 body.on("click", ".footer-scroller", function (e) { 235 e.preventDefault(); 236 $('html, body').animate({scrollTop: 0}, 'slow'); 237 }); 238 // END SCROLL TO TOP 239 240 // PLACEHOLDERS 241 $(".form-placeholder").click(function () { 242 $(this).siblings(".common-form-input").focus(); 243 }); 244 body.on("focus", ".common-form-input", function () { 245 $(this).addClass("common-form-input-active"); 246 }); 247 body.on("blur", ".common-form-input", function () { 248 let currentInput = $(this); 249 let currentInputVal = currentInput.val(); 250 if (currentInputVal === "") currentInput.removeClass("common-form-input-active"); 251 }); 252 // END PLACEHOLDERS 253 254 // PRODUCTS 255 if ($(".products-wrapper-js").length) { 256 function fixTitleHeight() { 257 let singleProductCards = $(".single-product-card"); 258 singleProductCards.find(".product-card-title").removeAttr("style"); 259 if ($(window).width() > 767) { 260 let cardTitleMaxHeight = 0; 261 singleProductCards.each(function (index, elem) { 262 let currentCardTitleHeight = $(elem).find(".product-card-title").outerHeight(); 263 if (currentCardTitleHeight > cardTitleMaxHeight) cardTitleMaxHeight = currentCardTitleHeight; 264 }); 265 singleProductCards.find(".product-card-title").css("min-height", cardTitleMaxHeight); 266 } 267 } 268 269 fixTitleHeight(); 270 $(window).resize(function () { 271 fixTitleHeight(); 272 }); 273 } 274 // END PRODUCTS 275 276 // INPUT PHONE JS VALIDATION 277 $('.phone-js-validation').on('input', function () { 278 let inputVal = $(this).val(); 279 let validVal = inputVal.replace(/[^0-9\s\-\+]/g, ''); 280 $(this).val(validVal); 281 }); 282 // END INPUT PHONE JS VALIDATION 283 284});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.