/** * Bongoto Theme — Woo Enhancements (no popup) * Path: assets/js/woo-enhancements.js * * - On AJAX add-to-cart, turn the same button into “View cart” (no extra link) * - Remove Woo’s injected wc-forward link * - Nudge/animate header cart */ (function ($) { 'use strict'; var $doc = $(document); function getCartUrl() { if (window.wc_add_to_cart_params && window.wc_add_to_cart_params.cart_url) { return window.wc_add_to_cart_params.cart_url; } if (window.wc_cart_params && window.wc_cart_params.cart_url) { return window.wc_cart_params.cart_url; } return '/cart/'; } function getViewCartText() { if (window.wc_add_to_cart_params && window.wc_add_to_cart_params.i18n_view_cart) { return window.wc_add_to_cart_params.i18n_view_cart; } return 'View cart'; } // WooCommerce AJAX Add to Cart $doc.on('added_to_cart', function (event, fragments, cart_hash, $button) { // Remove Woo's extra "View cart" link if ($button && $button.length) { $button.siblings('a.added_to_cart.wc-forward').remove(); } $('a.added_to_cart.wc-forward').remove(); var cartUrl = getCartUrl(); var viewCartText = getViewCartText(); // Normalize target button var $target = $button && $button.length ? $button : $('.add_to_cart_button.added').last(); if ($target && $target.length) { // Ensure it's an anchor (WC uses in loops) if (!$target.is('a')) { // If not anchor, try to find anchor within same card var $anchor = $target.closest('li.product, .bt-product-card').find('a.add_to_cart_button').first(); if ($anchor.length) $target = $anchor; } // Make it a compact "View cart" button $target .removeClass('ajax_add_to_cart add_to_cart_button loading') .addClass('is-view-cart button-sm') .attr('href', cartUrl) .attr('aria-label', viewCartText) .text(viewCartText); // Direct navigate on click $target.off('click.bongotoViewCart').on('click.bongotoViewCart', function (e) { e.preventDefault(); window.location.href = cartUrl; }); } // Header cart bump animation var $headerCart = $('.bt-header-cart, .bt-cart-icon, .bt-cart-count'); if ($headerCart.length) { $headerCart.addClass('bt-cart-bump'); setTimeout(function () { $headerCart.removeClass('bt-cart-bump'); }, 600); } }); })(jQuery);