0byt3m1n1
Path:
/
var
/
www
/
clients
/
client38
/
web37
/
web
/
wp-content
/
themes
/
Impreza
/
common
/
js
/
plugins
/
[
Home
]
File: woocommerce.js
/** * UpSolution WooCommerce elements * * @requires $us.canvas * @requires $us.nav */ jQuery( function( $ ) { var $cart = $( '.w-cart' ); if ( $cart.length == 0 ) { return; } var $quantity = $cart.find( '.w-cart-quantity' ); var us_accessibility = function() { $cart.find( 'a' ).on( 'focus.upsolution', function() { $( this ).closest( '.w-cart' ).addClass( 'opened' ); } ); $cart.find( 'a' ).on( 'blur.upsolution', function() { $( this ).closest( '.w-cart' ).removeClass( 'opened' ); } ); }; us_accessibility(); var updateCart = function() { if ( $cart.hasClass( 'opened' ) ) { $cart.removeClass( 'opened' ); } var $mini_cart_amount = $cart.find( '.us_mini_cart_amount' ).first(), mini_cart_amount = $mini_cart_amount.text(); if ( mini_cart_amount !== undefined ) { mini_cart_amount = mini_cart_amount + ''; mini_cart_amount = mini_cart_amount.match( /\d+/g ); if ( mini_cart_amount > 0 ) { $quantity.html( mini_cart_amount ); $cart.removeClass( 'empty' ); } else { $quantity.html( '0' ); $cart.addClass( 'empty' ); } } else { // fallback in case our action wasn't fired somehow var $quantities = $cart.find( '.quantity' ), total = 0; $quantities.each( function() { var quantity, text = $( this ).text() + '', matches = text.match( /\d+/g ); if ( matches ) { quantity = parseInt( matches[ 0 ], 10 ); total += quantity; } } ); if ( total > 0 ) { $quantity.html( total ); $cart.removeClass( 'empty' ); } else { $quantity.html( '0' ); $cart.addClass( 'empty' ); } } }; updateCart(); $( document.body ).bind( 'wc_fragments_loaded', function() { updateCart(); us_accessibility(); } ); $( document.body ).bind( 'wc_fragments_refreshed', function() { updateCart(); us_accessibility(); } ); var $notification = $cart.find( '.w-cart-notification' ), $productName = $notification.find( '.product-name' ), $cartLink = $cart.find( '.w-cart-link' ), $dropdown = $cart.find( '.w-cart-dropdown' ), $quantity = $cart.find( '.w-cart-quantity' ), productName = $productName.text(), showFn = 'fadeInCSS', hideFn = 'fadeOutCSS', opened = false; $notification.on( 'click', function() { $notification[ hideFn ](); } ); jQuery( 'body' ).bind( 'added_to_cart', function( event, fragments, cart_hash, $button ) { if ( event === undefined ) { return; } updateCart(); productName = $button.closest( '.product' ).find( '.woocommerce-loop-product__title' ).text(); $productName.html( productName ); $notification.addClass( 'shown' ); $notification.on( 'mouseenter', function() { $notification.removeClass( 'shown' ); } ); var newTimerId = setTimeout( function() { $notification.removeClass( 'shown' ); $notification.off( 'mouseenter' ); }, 3000 ); } ); if ( $.isMobile ) { var outsideClickEvent = function( e ) { if ( jQuery.contains( $cart[ 0 ], e.target ) ) { return; } $cart.removeClass( 'opened' ); $us.$body.off( 'touchstart', outsideClickEvent ); opened = false; }; $cartLink.on( 'click', function( e ) { if ( !opened ) { e.preventDefault(); $cart.addClass( 'opened' ); $us.$body.on( 'touchstart', outsideClickEvent ); } else { $cart.removeClass( 'opened' ); $us.$body.off( 'touchstart', outsideClickEvent ); } opened = !opened; } ); } } );