Sha256: 77ebcb929dde7fb04e356c073487c11409341318fd6f4d6a9db62cdef38330f1

Contents?: true

Size: 1.14 KB

Versions: 3

Compression:

Stored size: 1.14 KB

Contents

//= require spree/frontend

function gaAddToCart(variant, quantity) {
  clearGAplugins();
  var price = typeof variant.price === 'object' ? variant.price.amount : variant.price
  gtag(
    'event',
    'add_to_cart',
    {
      items: [{
        id: variant.sku,
        name: variant.name,
        category: variant.category,
        variant: variant.options_text,
        brand: variant.brand,
        price: price,
        quantity: quantity
      }]
    }
  );
}

function segmentAddtoCart(variant, quantity, currency) {
  analytics.track('Product Added', {
    product_id: variant.id,
    sku: variant.sku,
    category: variant.category,
    name: variant.name,
    brand: variant.brand,
    price: variant.price,
    currency: currency,
    quantity: quantity
  });
}

Spree.ready(function(){
  $('body').on('product_add_to_cart', function(event) {
    var variant = event.variant
    var quantity = event.quantity_increment
    var currency = event.cart.currency

    if (typeof gtag !== 'undefined') {
      gaAddToCart(variant, quantity)
    }

    if (typeof analytics !== 'undefined') {
      segmentAddtoCart(variant, quantity, currency)
    }
  })
});

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
spree_analytics_trackers-2.1.1 app/assets/javascripts/spree/frontend/add_to_cart_analytics.js
spree_analytics_trackers-2.1.0 app/assets/javascripts/spree/frontend/add_to_cart_analytics.js
spree_analytics_trackers-2.0.0 app/assets/javascripts/spree/frontend/add_to_cart_analytics.js