(function ($) { "use strict"; var $document = $(document); wooQuantityButtons(); offcanvasMiniCart(); addToCartAjaxButton(); addToWishlist(); function wooQuantityButtons() { var forms = jQuery(".woocommerce-cart-form, form.cart"); forms.find(".quantity.hidden").prev(".quantity__button").hide(); forms.find(".quantity.hidden").next(".quantity__button").hide(); $document.on( "click", "form.cart .quantity__button, .woocommerce-cart-form .quantity__button", function () { var $this = $(this); // Get current quantity values var qty = $this.closest(".quantity").find(".qty"); var val = qty.val() == "" ? 0 : parseFloat(qty.val()); var max = parseFloat(qty.attr("max")); var min = parseFloat(qty.attr("min")); var step = parseFloat(qty.attr("step")); // Change the value if plus or minus if ($this.is(".quantity__plus")) { if (max && max <= val) { qty.val(max).change(); } else { qty.val(val + step).change(); } } else { if (min && min >= val) { qty.val(min).change(); } else if (val >= 1) { qty.val(val - step).change(); } } } ); } function offcanvasMiniCart() { const offcanvas = document.querySelector(".amela-offcanvas-default"); const trigger = document.querySelectorAll(".amela-offcanvas-js-trigger"); if (!offcanvas) { return; } trigger.forEach((item, i) => { const panel = offcanvas.querySelector(".amela-offcanvas__panel"); const overlay = offcanvas.querySelector(".amela-offcanvas__overlay"); const close = offcanvas.querySelector(".amela-offcanvas__close"); if (!panel) return; item.addEventListener("click", (e) => { e.preventDefault(); panel.classList.add("amela-offcanvas__panel--is-open"); }); close.addEventListener("click", (e) => { closePanel(panel); }); // Close on overlay click overlay.addEventListener("click", (e) => { closePanel(panel); }); // Close on scroll window.addEventListener("scroll", (e) => { closePanel(panel); }); // Close on click or on esc document.addEventListener("keyup", (e) => { if (e.key === "Escape" || 27 === e.keyCode) { closePanel(panel); } }); }); function closePanel(panel) { panel.classList.remove("amela-offcanvas__panel--is-open"); document.activeElement.blur(); } } function addToCartAjaxButton() { $document.on("click", ".add_to_cart_button", function (e) { var _this = $(this); _this.closest(".product.type-product").addClass("cart-clicked"); // Return if add to cart redirect is enabled if ( typeof wc_add_to_cart_params == "undefined" || wc_add_to_cart_params.cart_redirect_after_add == "yes" ) return; $("body").on("added_to_cart", function () { setTimeout(function () { _this.next(".added_to_cart").addClass("button"); _this .next(".added_to_cart") .html( ''.concat( wc_add_to_cart_params.i18n_view_cart, '' ) ); }, 100); }); }); } function addToWishlist() { $document.on("added_to_wishlist removed_from_wishlist", function () { $.get( yith_wcwl_l10n.ajax_url, { action: "yith_wcwl_update_wishlist_count", }, function (data) { if (0 === data.count) { $(".amela-menu-wishlist__count").addClass("d-none"); } else { $(".amela-menu-wishlist__count").removeClass("d-none"); } $(".yith-wcwl-items-count").html(data.count); } ); }); } })(jQuery);