/* Template Name: Rokon - Single Product eCommerce HTML Template Author Name: Hook theme Author URL: https://themeforest.net/user/hooktheme Version: 1.0.0 */ "use strict"; // Preloader const preLoader = function () { let preloaderWrapper = document.getElementById("preloader"); window.onload = () => { preloaderWrapper.classList.add("loaded"); }; }; preLoader(); // getSiblings var getSiblings = function (elem) { const siblings = []; let sibling = elem.parentNode.firstChild; while (sibling) { if (sibling.nodeType === 1 && sibling !== elem) { siblings.push(sibling); } sibling = sibling.nextSibling; } return siblings; }; /* Slide Up */ var slideUp = (target, time) => { const duration = time ? time : 500; target.style.transitionProperty = "height, margin, padding"; target.style.transitionDuration = duration + "ms"; target.style.boxSizing = "border-box"; target.style.height = target.offsetHeight + "px"; target.offsetHeight; target.style.overflow = "hidden"; target.style.height = 0; window.setTimeout(() => { target.style.display = "none"; target.style.removeProperty("height"); target.style.removeProperty("overflow"); target.style.removeProperty("transition-duration"); target.style.removeProperty("transition-property"); }, duration); }; /* Slide Down */ var slideDown = (target, time) => { const duration = time ? time : 500; target.style.removeProperty("display"); let display = window.getComputedStyle(target).display; if (display === "none") display = "block"; target.style.display = display; const height = target.offsetHeight; target.style.overflow = "hidden"; target.style.height = 0; target.offsetHeight; target.style.boxSizing = "border-box"; target.style.transitionProperty = "height, margin, padding"; target.style.transitionDuration = duration + "ms"; target.style.height = height + "px"; window.setTimeout(() => { target.style.removeProperty("height"); target.style.removeProperty("overflow"); target.style.removeProperty("transition-duration"); target.style.removeProperty("transition-property"); }, duration); }; // Get window top offset function TopOffset(el) { let rect = el.getBoundingClientRect(), scrollTop = window.pageYOffset || document.documentElement.scrollTop; return { top: rect.top + scrollTop }; } // Header sticky activation const headerStickyWrapper = document.querySelector("header"); const headerStickyTarget = document.querySelector(".header__sticky"); if (headerStickyTarget) { let headerHeight = headerStickyWrapper.clientHeight; window.addEventListener("scroll", function () { let StickyTargetElement = TopOffset(headerStickyWrapper); let TargetElementTopOffset = StickyTargetElement.top; if (window.scrollY > TargetElementTopOffset) { headerStickyTarget.classList.add("sticky"); } else { headerStickyTarget.classList.remove("sticky"); } }); } // Back to top const scrollTop = document.getElementById("scroll__top"); if (scrollTop) { scrollTop.addEventListener("click", function () { window.scroll({ top: 0, left: 0, behavior: "smooth" }); }); window.addEventListener("scroll", function () { if (window.scrollY > 300) { scrollTop.classList.add("active"); } else { scrollTop.classList.remove("active"); } }); } // slider swiper activation var swiper = new Swiper(".hero__slider--activation", { slidesPerView: 1, loop: true, clickable: true, speed: 500, spaceBetween: 30, autoplay: { delay: 3000, disableOnInteraction: false, }, pagination: { el: ".hero__slider--inner .swiper-pagination", clickable: true, }, }); // tab activation const tab = function (wrapper) { let tabContainer = document.querySelector(wrapper); if (tabContainer) { tabContainer.addEventListener("click", function (evt) { let listItem = evt.target; if (listItem.hasAttribute("data-toggle")) { let targetId = listItem.dataset.target, targetItem = document.querySelector(targetId); listItem.parentElement .querySelectorAll('[data-toggle="tab"]') .forEach(function (list) { list.classList.remove("active"); }); listItem.classList.add("active"); targetItem.classList.add("active"); setTimeout(function () { targetItem.classList.add("show"); }, 150); getSiblings(targetItem).forEach(function (pane) { pane.classList.remove("show"); setTimeout(function () { pane.classList.remove("active"); }, 150); }); } }); } }; // Homepage 1 product tab tab(".project__tab--one"); // product details media swiper activation var swiperSmallProduct1 = new Swiper(".product-nav1", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig1 = new Swiper(".product__media--preview1", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct1, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--1"); // product details media swiper activation var swiperSmallProduct2 = new Swiper(".product-nav2", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig2 = new Swiper(".product__media--preview2", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct2, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--2"); // product details media swiper activation var swiperSmallProduct3 = new Swiper(".product-nav3", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig3 = new Swiper(".product__media--preview3", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct3, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--3"); // product details media swiper activation var swiperSmallProduct4 = new Swiper(".product-nav4", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig4 = new Swiper(".product__media--preview4", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct4, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--4"); // product details media swiper activation var swiperSmallProduct5 = new Swiper(".product-nav5", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig5 = new Swiper(".product__media--preview5", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct5, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--5"); // product details media swiper activation var swiperSmallProduct6 = new Swiper(".product-nav6", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig6 = new Swiper(".product__media--preview6", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct6, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--6"); // product details media swiper activation var swiperSmallProduct7 = new Swiper(".product-nav7", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig7 = new Swiper(".product__media--preview7", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct7, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--7"); // product details media swiper activation var swiperSmallProduct8 = new Swiper(".product-nav8", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig8 = new Swiper(".product__media--preview8", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct8, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--8"); // product details media swiper activation var swiperSmallProduct9 = new Swiper(".product-nav9", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig9 = new Swiper(".product__media--preview9", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct9, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--9"); // product details media swiper activation var swiperSmallProduct10 = new Swiper(".product-nav10", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig10 = new Swiper(".product__media--preview10", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct10, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--10"); // product details media swiper activation var swiperSmallProduct11 = new Swiper(".product-nav11", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig11 = new Swiper(".product__media--preview11", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct11, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--11"); // product details media swiper activation var swiperSmallProduct12 = new Swiper(".product-nav12", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig12 = new Swiper(".product__media--preview12", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct12, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--12"); // product details media swiper activation var swiperSmallProduct13 = new Swiper(".product-nav13", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig13 = new Swiper(".product__media--preview13", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct13, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--13"); // product details media swiper activation var swiperSmallProduct14 = new Swiper(".product-nav14", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig14 = new Swiper(".product__media--preview14", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct14, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--14"); // product details media swiper activation var swiperSmallProduct15 = new Swiper(".product-nav15", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig15 = new Swiper(".product__media--preview15", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct15, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--15"); // product details media swiper activation var swiperSmallProduct16 = new Swiper(".product-nav16", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig16 = new Swiper(".product__media--preview16", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct16, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--16"); // product details media swiper activation var swiperSmallProduct17 = new Swiper(".product-nav17", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig17 = new Swiper(".product__media--preview17", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct17, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--17"); // product details media swiper activation var swiperSmallProduct18 = new Swiper(".product-nav18", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig18 = new Swiper(".product__media--preview18", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct18, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--18"); // product details media swiper activation var swiperSmallProduct19 = new Swiper(".product-nav19", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig19 = new Swiper(".product__media--preview19", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct19, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--19"); // product details media swiper activation var swiperSmallProduct20 = new Swiper(".product-nav20", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig20 = new Swiper(".product__media--preview20", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct20, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--20"); // product details media swiper activation var swiperSmallProduct21 = new Swiper(".product-nav21", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig21 = new Swiper(".product__media--preview21", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct21, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--21"); // product details media swiper activation var swiperSmallProduct22 = new Swiper(".product-nav22", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig22 = new Swiper(".product__media--preview22", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct22, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--22"); // product details media swiper activation var swiperSmallProduct23 = new Swiper(".product-nav23", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig23 = new Swiper(".product__media--preview23", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct23, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--23"); // product details media swiper activation var swiperSmallProduct24 = new Swiper(".product-nav24", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig24 = new Swiper(".product__media--preview24", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct24, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--24"); // product details media swiper activation var swiperSmallProduct25 = new Swiper(".product-nav25", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig25 = new Swiper(".product__media--preview25", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct25, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--25"); // product details media swiper activation var swiperSmallProduct26 = new Swiper(".product-nav26", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig26 = new Swiper(".product__media--preview26", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct26, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--26"); // product details media swiper activation var swiperSmallProduct27 = new Swiper(".product-nav27", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig27 = new Swiper(".product__media--preview27", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct27, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--27"); // product details media swiper activation var swiperSmallProduct28 = new Swiper(".product-nav28", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig28 = new Swiper(".product__media--preview28", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct28, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--28"); // product details media swiper activation var swiperSmallProduct29 = new Swiper(".product-nav29", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig29 = new Swiper(".product__media--preview29", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct29, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--29"); // product details media swiper activation var swiperSmallProduct30 = new Swiper(".product-nav30", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig30 = new Swiper(".product__media--preview30", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct30, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--30"); // product details media swiper activation var swiperSmallProduct31 = new Swiper(".product-nav31", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 4, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 4, }, 0: { slidesPerView: 1, }, }, }); var productBig31 = new Swiper(".product__media--preview31", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct31, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); tab(".product__tab--31"); /* // product details media swiper activation var swiperSmallProduct = new Swiper(".product__media--nav2", { loop: true, spaceBetween: 20, slidesPerView: 4, direction: "vertical", freeMode: true, watchSlidesProgress: true, autoHeight: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 5, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 3, }, 0: { slidesPerView: 1, }, }, }); var productBig = new Swiper(".product__media--preview2", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); */ // product details media horizontal style activation var swiperSmallProduct2 = new Swiper(".product__media--nav__horizontal", { loop: true, spaceBetween: 20, slidesPerView: 4, freeMode: true, watchSlidesProgress: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 5, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 3, }, 0: { slidesPerView: 1, }, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); var productBig = new Swiper(".product__media--preview__horizontal", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct2, }, }); // product details media horizontal two style activation var swiperSmallProduct2 = new Swiper(".product__media--nav__horizontal--two", { loop: true, spaceBetween: 20, slidesPerView: 4, freeMode: true, watchSlidesProgress: true, breakpoints: { 768: { slidesPerView: 4, }, 576: { slidesPerView: 5, }, 480: { slidesPerView: 4, }, 200: { slidesPerView: 3, }, 0: { slidesPerView: 1, }, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); var productBig = new Swiper(".product__media--preview__horizontal--two", { loop: true, spaceBetween: 10, thumbs: { swiper: swiperSmallProduct2, }, }); // blog swiper column3 activation var swiper = new Swiper(".blog__swiper--activation", { slidesPerView: 3, loop: true, clickable: true, spaceBetween: 30, breakpoints: { 1200: { slidesPerView: 3, }, 992: { slidesPerView: 3, }, 768: { slidesPerView: 2, spaceBetween: 30, }, 480: { slidesPerView: 2, spaceBetween: 20, }, 0: { slidesPerView: 1, }, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); // blog swiper column4 activation var swiper = new Swiper(".blog__swiper--column4", { slidesPerView: 3, loop: true, clickable: true, spaceBetween: 30, breakpoints: { 1366: { slidesPerView: 4, }, 1200: { slidesPerView: 3, }, 992: { slidesPerView: 3, }, 768: { slidesPerView: 2, spaceBetween: 30, }, 480: { slidesPerView: 2, spaceBetween: 20, }, 0: { slidesPerView: 1, }, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); // product swiper activation var swiper = new Swiper(".product__swiper--column1", { slidesPerView: 1, loop: true, clickable: true, spaceBetween: 30, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); // testimonial swiper activation var swiper = new Swiper(".testimonial__swiper--activation", { slidesPerView: 3, loop: true, clickable: true, spaceBetween: 30, breakpoints: { 1200: { slidesPerView: 3, }, 992: { slidesPerView: 3, }, 768: { slidesPerView: 2, spaceBetween: 30, }, 480: { slidesPerView: 2, spaceBetween: 20, }, 0: { slidesPerView: 1, }, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); // instagram swiper activation var swiper = new Swiper(".instagram__swiper--activation", { slidesPerView: 7, loop: true, clickable: true, spaceBetween: 30, breakpoints: { 1366: { slidesPerView: 7, }, 1200: { slidesPerView: 6, }, 992: { slidesPerView: 5, }, 768: { slidesPerView: 4, spaceBetween: 30, }, 576: { slidesPerView: 3, spaceBetween: 20, }, 0: { slidesPerView: 2, }, }, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); // quickview swiper activation var swiper = new Swiper(".quickview__swiper--activation", { slidesPerView: 1, loop: true, clickable: true, spaceBetween: 30, navigation: { nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, pagination: { el: ".swiper-pagination", clickable: true, }, }); // countdown activation document.querySelectorAll("[data-countdown]").forEach(function (elem) { const countDownItem = function (value, label) { return `
${value}

${label}

`; }; const date = new Date(elem.getAttribute("data-countdown")).getTime(), second = 1000, minute = second * 60, hour = minute * 60, day = hour * 24; const countDownInterval = setInterval(function () { let currentTime = new Date().getTime(), timeDistance = date - currentTime, daysValue = Math.floor(timeDistance / day), hoursValue = Math.floor((timeDistance % day) / hour), minutesValue = Math.floor((timeDistance % hour) / minute), secondsValue = Math.floor((timeDistance % minute) / second); elem.innerHTML = countDownItem(daysValue, "days") + countDownItem(hoursValue, "hrs") + countDownItem(minutesValue, "mins") + countDownItem(secondsValue, "secs"); if (timeDistance < 0) clearInterval(countDownInterval); }, 1000); }); // adding & removing class function const activeClassAction = function (toggle, target) { const to = document.querySelector(toggle), ta = document.querySelector(target); if (to && ta) { to.addEventListener("click", function (e) { e.preventDefault(); let triggerItem = e.target; if (triggerItem.classList.contains("active")) { triggerItem.classList.remove("active"); ta.classList.remove("active"); } else { triggerItem.classList.add("active"); ta.classList.add("active"); } }); document.addEventListener("click", function (event) { if ( !event.target.closest(toggle) && !event.target.classList.contains(toggle.replace(/\./, "")) ) { if ( !event.target.closest(target) && !event.target.classList.contains(target.replace(/\./, "")) ) { to.classList.remove("active"); ta.classList.remove("active"); } } }); } }; activeClassAction(".account__currency--link", ".dropdown__currency"); activeClassAction(".language__switcher", ".dropdown__language"); activeClassAction( ".offcanvas__language--switcher", ".offcanvas__dropdown--language" ); activeClassAction( ".offcanvas__account--currency__menu", ".offcanvas__account--currency__submenu" ); activeClassAction(".footer__language--link", ".footer__dropdown--language"); activeClassAction(".footer__currency--link", ".footer__dropdown--currency"); // OffCanvas Sidebar Activation function offcanvsSidebar(openTrigger, closeTrigger, wrapper) { let OpenTriggerprimary__btn = document.querySelectorAll(openTrigger); let closeTriggerprimary__btn = document.querySelector(closeTrigger); let WrapperSidebar = document.querySelector(wrapper); let wrapperOverlay = wrapper.replace(".", ""); function handleBodyClass(evt) { let eventTarget = evt.target; if (!eventTarget.closest(wrapper) && !eventTarget.closest(openTrigger)) { WrapperSidebar.classList.remove("active"); document .querySelector("body") .classList.remove(`${wrapperOverlay}_active`); } } if (OpenTriggerprimary__btn && WrapperSidebar) { OpenTriggerprimary__btn.forEach(function (singleItem) { singleItem.addEventListener("click", function (e) { if (e.target.dataset.offcanvas != undefined) { WrapperSidebar.classList.add("active"); document .querySelector("body") .classList.add(`${wrapperOverlay}_active`); document.body.addEventListener("click", handleBodyClass.bind(this)); } }); }); } if (closeTriggerprimary__btn && WrapperSidebar) { closeTriggerprimary__btn.addEventListener("click", function (e) { if (e.target.dataset.offcanvas != undefined) { WrapperSidebar.classList.remove("active"); document .querySelector("body") .classList.remove(`${wrapperOverlay}_active`); document.body.removeEventListener("click", handleBodyClass.bind(this)); } }); } } // Mini Cart offcanvsSidebar( ".minicart__open--btn", ".minicart__close--btn", ".offCanvas__minicart" ); // Search Bar offcanvsSidebar( ".search__open--btn", ".predictive__search--close__btn", ".predictive__search--box" ); // Offcanvas filter sidebar offcanvsSidebar( ".widget__filter--btn", ".offcanvas__filter--close", ".offcanvas__filter--sidebar" ); /* Offcanvas Mobile Menu Function */ const offcanvasHeader = function () { const offcanvasOpen = document.querySelector( ".offcanvas__header--menu__open--btn" ), offcanvasClose = document.querySelector(".offcanvas__close--btn"), offcanvasHeader = document.querySelector(".offcanvas-header"), offcanvasMenu = document.querySelector(".offcanvas__menu"), body = document.querySelector("body"); /* Offcanvas SubMenu Toggle */ if (offcanvasMenu) { offcanvasMenu .querySelectorAll(".offcanvas__sub_menu") .forEach(function (ul) { const subMenuToggle = document.createElement("button"); subMenuToggle.classList.add("offcanvas__sub_menu_toggle"); ul.parentNode.appendChild(subMenuToggle); }); } /* Open/Close Menu On Click Toggle Button */ if (offcanvasOpen) { offcanvasOpen.addEventListener("click", function (e) { e.preventDefault(); if (e.target.dataset.offcanvas != undefined) { offcanvasHeader.classList.add("open"); body.classList.add("mobile_menu_open"); } }); } if (offcanvasClose) { offcanvasClose.addEventListener("click", function (e) { e.preventDefault(); if (e.target.dataset.offcanvas != undefined) { offcanvasHeader.classList.remove("open"); body.classList.remove("mobile_menu_open"); } }); } /* Mobile submenu slideToggle Activation */ let mobileMenuWrapper = document.querySelector(".offcanvas__menu_ul"); if (mobileMenuWrapper) { mobileMenuWrapper.addEventListener("click", function (e) { let targetElement = e.target; if (targetElement.classList.contains("offcanvas__sub_menu_toggle")) { const parent = targetElement.parentElement; if (parent.classList.contains("active")) { targetElement.classList.remove("active"); parent.classList.remove("active"); parent .querySelectorAll(".offcanvas__sub_menu") .forEach(function (subMenu) { subMenu.parentElement.classList.remove("active"); subMenu.nextElementSibling.classList.remove("active"); slideUp(subMenu); }); } else { targetElement.classList.add("active"); parent.classList.add("active"); slideDown(targetElement.previousElementSibling); getSiblings(parent).forEach(function (item) { item.classList.remove("active"); item .querySelectorAll(".offcanvas__sub_menu") .forEach(function (subMenu) { subMenu.parentElement.classList.remove("active"); subMenu.nextElementSibling.classList.remove("active"); slideUp(subMenu); }); }); } } }); } if (offcanvasHeader) { document.addEventListener("click", function (event) { if ( !event.target.closest(".offcanvas__header--menu__open--btn") && !event.target.classList.contains( ".offcanvas__header--menu__open--btn".replace(/\./, "") ) ) { if ( !event.target.closest(".offcanvas-header") && !event.target.classList.contains( ".offcanvas-header".replace(/\./, "") ) ) { offcanvasHeader.classList.remove("open"); body.classList.remove("mobile_menu_open"); } } }); } /* Remove Mobile Menu Open Class & Hide Mobile Menu When Window Width in More Than 991 */ if (offcanvasHeader) { window.addEventListener("resize", function () { if (window.outerWidth >= 992) { offcanvasHeader.classList.remove("open"); body.classList.remove("mobile_menu_open"); } }); } }; /* Mobile Menu Active */ offcanvasHeader(); // Increment & Decrement Qunatity Button const quantityWrapper = document.querySelectorAll(".quantity__box"); if (quantityWrapper) { quantityWrapper.forEach(function (singleItem) { let increaseButton = singleItem.querySelector(".increase"); let decreaseButton = singleItem.querySelector(".decrease"); increaseButton.addEventListener("click", function (e) { let input = e.target.previousElementSibling.children[0]; if (input.dataset.counter != undefined) { let value = parseInt(input.value, 10); value = isNaN(value) ? 0 : value; value++; input.value = value; } }); decreaseButton.addEventListener("click", function (e) { let input = e.target.nextElementSibling.children[0]; if (input.dataset.counter != undefined) { let value = parseInt(input.value, 10); value = isNaN(value) ? 0 : value; value < 1 ? (value = 1) : ""; value--; input.value = value; } }); }); } // Modal JS const openEls = document.querySelectorAll("[data-open]"); const closeEls = document.querySelectorAll("[data-close]"); const isVisible = "is-visible"; for (const el of openEls) { el.addEventListener("click", function () { const modalId = this.dataset.open; document.getElementById(modalId).classList.add(isVisible); }); } for (const el of closeEls) { el.addEventListener("click", function () { this.parentElement.parentElement.parentElement.classList.remove(isVisible); }); } document.addEventListener("click", (e) => { if (e.target == document.querySelector(".modal.is-visible")) { document.querySelector(".modal.is-visible").classList.remove(isVisible); } }); document.addEventListener("keyup", (e) => { if (e.key == "Escape" && document.querySelector(".modal.is-visible")) { document.querySelector(".modal.is-visible").classList.remove(isVisible); } }); // Accordion function customAccordion(accordionWrapper, singleItem, accordionBody) { let accoridonButtons = document.querySelectorAll(accordionWrapper); accoridonButtons.forEach(function (item) { item.addEventListener("click", function (evt) { let itemTarget = evt.target; if ( itemTarget.classList.contains("accordion__items--button") || itemTarget.classList.contains("widget__categories--menu__label") ) { let singleAccordionWrapper = itemTarget.closest(singleItem), singleAccordionBody = singleAccordionWrapper.querySelector(accordionBody); if (singleAccordionWrapper.classList.contains("active")) { singleAccordionWrapper.classList.remove("active"); slideUp(singleAccordionBody); } else { singleAccordionWrapper.classList.add("active"); slideDown(singleAccordionBody); getSiblings(singleAccordionWrapper).forEach(function (item) { let sibllingSingleAccordionBody = item.querySelector(accordionBody); item.classList.remove("active"); slideUp(sibllingSingleAccordionBody); }); } } }); }); } customAccordion( ".accordion__container", ".accordion__items", ".accordion__items--body" ); customAccordion( ".widget__categories--menu", ".widget__categories--menu__list", ".widget__categories--sub__menu" ); // footer widget js let accordion = true; const footerWidgetAccordion = function () { accordion = false; let footerWidgetContainer = document.querySelector(".main__footer"); footerWidgetContainer.addEventListener("click", function (evt) { let singleItemTarget = evt.target; if (singleItemTarget.classList.contains("footer__widget--button")) { const footerWidget = singleItemTarget.closest(".footer__widget"), footerWidgetInner = footerWidget.querySelector( ".footer__widget--inner" ); if (footerWidget.classList.contains("active")) { footerWidget.classList.remove("active"); slideUp(footerWidgetInner); } else { footerWidget.classList.add("active"); slideDown(footerWidgetInner); getSiblings(footerWidget).forEach(function (item) { const footerWidgetInner = item.querySelector( ".footer__widget--inner" ); item.classList.remove("active"); slideUp(footerWidgetInner); }); } } }); }; window.addEventListener("load", function () { if (accordion) { footerWidgetAccordion(); } }); window.addEventListener("resize", function () { document.querySelectorAll(".footer__widget").forEach(function (item) { if (window.outerWidth >= 768) { item.classList.remove("active"); item.querySelector(".footer__widget--inner").style.display = ""; } }); if (accordion) { footerWidgetAccordion(); } }); // lightbox Activation const customLightboxHTML = `
`; const lightbox = GLightbox({ touchNavigation: true, lightboxHTML: customLightboxHTML, loop: true, }); // CounterUp Activation const wrapper = document.getElementById("funfactId"); if (wrapper) { const counters = wrapper.querySelectorAll(".js-counter"); const duration = 1000; let isCounted = false; document.addEventListener("scroll", function () { const wrapperPos = wrapper.offsetTop - window.innerHeight; if (!isCounted && window.scrollY > wrapperPos) { counters.forEach((counter) => { const countTo = counter.dataset.count; const countPerMs = countTo / duration; let currentCount = 0; const countInterval = setInterval(function () { if (currentCount >= countTo) { clearInterval(countInterval); } counter.textContent = Math.round(currentCount); currentCount = currentCount + countPerMs; }, 1); }); isCounted = true; } }); } // Newsletter popup const newsletterPopup = function () { let newsletterWrapper = document.querySelector(".newsletter__popup"), newsletterCloseButton = document.querySelector( ".newsletter__popup--close__btn" ), dontShowPopup = document.querySelector("#newsletter__dont--show"), popuDontShowMode = localStorage.getItem("newsletter__show"); if (newsletterWrapper && popuDontShowMode == null) { window.addEventListener("load", (event) => { setTimeout(function () { document.body.classList.add("overlay__active"); newsletterWrapper.classList.add("newsletter__show"); document.addEventListener("click", function (event) { if (!event.target.closest(".newsletter__popup--inner")) { document.body.classList.remove("overlay__active"); newsletterWrapper.classList.remove("newsletter__show"); } }); newsletterCloseButton.addEventListener("click", function () { document.body.classList.remove("overlay__active"); newsletterWrapper.classList.remove("newsletter__show"); }); dontShowPopup.addEventListener("click", function () { if (dontShowPopup.checked) { localStorage.setItem("newsletter__show", true); } else { localStorage.removeItem("newsletter__show"); } }); }, 3000); }); } }; //newsletterPopup();