NikolayBezay

Soda GA direct revenue example.

Jul 8th, 2022 (edited)
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. (function () {
  2. function pushCustomGAEvent(eventType, eventElementType, elementId) {
  3. if (window.preDataLayer) {
  4. window.preDataLayer.push({
  5. event: "newEvent",
  6. newEventData: {
  7. type: eventType,
  8. elementType: eventElementType,
  9. elementId: elementId
  10. }
  11. });
  12. }
  13. }
  14. function pushImpretionEvent() {
  15. window.preDataLayer.push({
  16. event: "newEvent",
  17. newEventData: {
  18. ecommerce: {
  19. impressions: {
  20. "Adoric - Upsale: NEW gass in the cart": [
  21. {
  22. id: PRODUCT_SKU,
  23. title: "Spare Cylinder",
  24. type: "Carbonator",
  25. price: 2999,
  26. available: true,
  27. variants: [
  28. {
  29. id: PDRODUCT_ID,
  30. name: "Spare Cylinder",
  31. price: 2999,
  32. available: true,
  33. productId: PRODUCT_SKU
  34. }
  35. ]
  36. }
  37. ]
  38. }
  39. },
  40. type: "ecommerceData"
  41. }
  42. });
  43. }
  44. function pushAddToCartEvent() {
  45. window.preDataLayer = window.dataLayer || [];
  46. window.preDataLayer.push({
  47. event: "newEvent",
  48. newEventData: {
  49. ecommerce: {
  50. add: {
  51. list: "Adoric - Upsale: NEW gass in the cart",
  52. products: [{ variant_id: PDRODUCT_ID, quantity: 1 }]
  53. }
  54. },
  55. type: "ecommerceData"
  56. }
  57. });
  58. }
  59. var GA_EVENT_CATEGORY = "Adoric - GASINTHECART";
  60. var GA_EVENT_ACTION = "Added to the cart";
  61. var GA_EVENT_LABEL = "Carbonating Cylinder ";
  62. var PDRODUCT_ID = 39539279659050;
  63. var PRODUCT_SKU = 6615783702570;
  64. pushImpretionEvent();
  65. function adoricAddToCart(productId) {
  66. var data = { id: productId, quantity: 1 };
  67. var xhr = new XMLHttpRequest();
  68. xhr.withCredentials = true;
  69. xhr.addEventListener("readystatechange", function () {
  70. if (this.readyState === 4) {
  71. console.log(this.responseText);
  72. pushCustomGAEvent(GA_EVENT_CATEGORY, GA_EVENT_ACTION, GA_EVENT_LABEL);
  73. pushAddToCartEvent();
  74. /*window.location.reload();*/
  75. }
  76. });
  77. xhr.open("POST", window.location.origin + "/cart/add.js");
  78. xhr.setRequestHeader("content-type", "application/json");
  79. xhr.setRequestHeader("cache-control", "no-cache");
  80. xhr.send(JSON.stringify(data));
  81. }
  82. adoricAddToCart(PDRODUCT_ID);
  83. })();
  84.  
Add Comment
Please, Sign In to add comment