/*global storefront_sticky_add_to_cart_params */ ( function () { // eslint-disable-next-line @wordpress/no-global-event-listener document.addEventListener( 'DOMContentLoaded', function () { const stickyAddToCart = document.getElementsByClassName( 'storefront-sticky-add-to-cart' ); if ( ! stickyAddToCart.length ) { return; } // eslint-disable-next-line camelcase if ( typeof storefront_sticky_add_to_cart_params === 'undefined' ) { return; } const trigger = document.getElementsByClassName( storefront_sticky_add_to_cart_params.trigger_class ); if ( trigger.length > 0 ) { const stickyAddToCartToggle = function () { if ( trigger[ 0 ].getBoundingClientRect().top + trigger[ 0 ].scrollHeight < 0 ) { stickyAddToCart[ 0 ].classList.add( 'storefront-sticky-add-to-cart--slideInDown' ); stickyAddToCart[ 0 ].classList.remove( 'storefront-sticky-add-to-cart--slideOutUp' ); } else if ( stickyAddToCart[ 0 ].classList.contains( 'storefront-sticky-add-to-cart--slideInDown' ) ) { stickyAddToCart[ 0 ].classList.add( 'storefront-sticky-add-to-cart--slideOutUp' ); stickyAddToCart[ 0 ].classList.remove( 'storefront-sticky-add-to-cart--slideInDown' ); } }; stickyAddToCartToggle(); // eslint-disable-next-line @wordpress/no-global-event-listener window.addEventListener( 'scroll', function () { stickyAddToCartToggle(); } ); // Get product id let productId = null; document.body.classList.forEach( function ( item ) { if ( item.substring( 0, 7 ) === 'postid-' ) { productId = item.replace( /[^0-9]/g, '' ); } } ); if ( productId ) { const product = document.getElementById( 'product-' + productId ); if ( product ) { if ( ! product.classList.contains( 'product-type-simple' ) && ! product.classList.contains( 'product-type-external' ) ) { const selectOptions = document.getElementsByClassName( 'storefront-sticky-add-to-cart__content-button' ); selectOptions[ 0 ].addEventListener( 'click', function ( event ) { event.preventDefault(); document .getElementById( 'product-' + productId ) .scrollIntoView(); } ); } } } } } ); } )();