PageSourceSearch

https://www.foxracing.com/on/demandware.static/Sites-FoxUS-Site/-/…/v1791012333451/js/adaptors/sfcc/events.js

js foxracing.com collected 2026-10-03 20:25:11 UTC 10,660 bytes, 1 lines download raw bytes

1(()=>{"use strict";var e;function t(e){return e.map((function(e){return Object.assign({},e,{id:e.item_id})}))}function a(e){var t={user_data:e&&e.ga4UserData||{logged_in:!0}};return e&&e.ga4UserId&&(t.user_id=e.ga4UserId),t}function r(e){if(Array.isArray(e))for(let t=0;t<e.length;t++){const a=r(e[t]);if(a)return a}else if(null!==e&&"object"==typeof e){const t=Object.keys(e);for(let a=0;a<t.length;a++){const o=t[a];if("currency"===o&&"string"==typeof e[o])return e[o];const n=r(e[o]);if(n)return n}}return null}(e=function(){var e=document.cookie.match(/(?:^|;\s*)_ga=([^;]*)/);if(!e)return null;var t=decodeURIComponent(e[1]).split(".");return t.length>=4?t[2]+"."+t[3]:null}())&&window.dataLayer&&window.dataLayer.push({client_id:e});var o=[".product-grid",".recommendations-container",".product-carousel",".product-listing",".search-results-container",".enhanced-slider-container",".slider-container"],n={"product-grid":"Product Grid","recommendations-container":"Recommendations","product-carousel":"Product Carousel","product-listing":"Product Listing","search-results-container":"Search Results","enhanced-slider-container":"Recommendations","slider-container":"Recommendations"},i="undefined"!=typeof WeakMap?new WeakMap:null,s=0;function c(e){return e.dataset.gtmListId?e.dataset.gtmListId:e.id?e.id:i?(i.has(e)||i.set(e,"list_"+ ++s),i.get(e)):"product_list"}function d(e,t){if(e.dataset.gtmListName)return e.dataset.gtmListName;for(var a=0;a<o.length;a++){var r=o[a].slice(1);if(e.classList.contains(r))return n[r]||t}return t}function u(e){for(var t=0;t<o.length;t++){var a=e.closest(o[t]);if(a)return a}return null}function l(e){var t=u(e);if(t){var a=c(t);return{listId:a,listName:d(t,a)}}return{listId:"product_list",listName:"Product List"}}window._listRenderSignatures=window._listRenderSignatures||{},window.ga4SeededList&&window.ga4SeededList.listId&&(window._listRenderSignatures[window.ga4SeededList.listId]=(window.ga4SeededList.itemIds||[]).join(","));var m=500,y={};function w(e,t,a){var n=[];if(function(e){if(e)return Array.prototype.slice.call(e.querySelectorAll(".product[data-gtmdata]"));var t=o.join(", ");return Array.prototype.filter.call(document.querySelectorAll(".product[data-gtmdata]"),(function(e){return!e.closest(t)}))}(e).forEach((function(e){try{var t=JSON.parse(e.dataset.gtmdata);t&&t.item_id&&n.push(Object.assign({},t,{index:n.length}))}catch(e){}})),n.length){var i=n.map((function(e){return e.item_id})).join(",");window._listRenderSignatures[t]!==i&&(window._listRenderSignatures[t]=i,window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.VIEW_ITEM_LIST,{ecommerce:{item_list_id:t,item_list_name:a,currency:r(window.dataLayer),items:n}}),"searchshow"===window.pageAction&&window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.SEARCH,{search_term:window.searchTerm||null,ecommerce:{impressions:n}}))}}function g(){let e=null;const t=new WeakSet;function a(){e||(e=new IntersectionObserver((e=>{e.forEach((e=>{e.isIntersecting&&e.intersectionRatio>.8&&setTimeout((()=>{e.isIntersecting&&function(e){if(window.RevelystDataLayer.isEnabled()&&e.classList.contains("product")&&e.dataset.gtmdata){var t=u(e),a=t?c(t):"product_list",r=t?d(t,a):"Product List";y[a]&&clearTimeout(y[a]),y[a]=setTimeout((function(){delete y[a],w(t,a,r)}),m)}}(e.target)}),1e3)}))}),{threshold:.8,rootMargin:"0px",root:document.body})),document.querySelectorAll(".product").forEach((a=>{t.has(a)||(e.observe(a),t.add(a))}))}a();[".product-grid",".recommendations-container",".product-carousel",".search-results-container",".product-listing",".enhanced-slider-container",".slider-container"].forEach((function(e){document.querySelectorAll(e).forEach((function(e){new MutationObserver((function(e){var t=!1;e.forEach((function(e){e.addedNodes.forEach((function(e){e.nodeType===Node.ELEMENT_NODE&&(e.classList.contains("product")||e.querySelector&&e.querySelector(".product"))&&(t=!0)}))})),t&&a()})).observe(e,{childList:!0,subtree:!0})}))}))}function p(e){e(document).on("click",".product a",(function(){if(e(this).closest(".quickview, .quick-add-button, .wishlist, .add-to-cart, .add-to-cart-global").length)return;const t=e(this).closest(".product-tile")[0]||e(this).closest(".product")[0];t&&function(e){if(!window.RevelystDataLayer.isEnabled())return;let t=e.dataset.gtmdata;if(!t){const a=e.closest(".product");a&&a.dataset.gtmdata&&(t=a.dataset.gtmdata)}if(t)try{const a="string"==typeof t?JSON.parse(t):t,n=l(e),i=e.closest(o.join(", ")),s=i?Array.prototype.indexOf.call(i.querySelectorAll(".product"),e):-1,c=Object.assign({},a,s>=0?{index:s}:{}),d={ecommerce:{item_list_id:c.item_list_id||n.listId,item_list_name:c.item_list_name||n.listName,currency:r(window.dataLayer),items:[c]}};window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.SELECT_ITEM,d),window.RevelystDataLayer.pushEcommerce("productClick",{ecommerce:{click:{actionField:{list:c.item_list_name||"Product List"},products:[c]}}})}catch(e){console.error("Error parsing GTM data for select_item:",e)}}(t)}))}const v={all:function(e){e(document).on("updateAddToCartFormData","button.add-to-cart, button.add-to-cart-global",(function(t,a){var r=e(this).closest(".product")[0];if(r){var o=l(r);"product_list"!==o.listId&&(a.gtmListId=o.listId,a.gtmListName=o.listName)}})),e("body").on("product:afterAddToCart",((e,a)=>{window.RevelystDataLayer.isEnabled()&&a.dataLayer&&(window.RevelystDataLayer.pushEcommerce(a.dataLayer.event,a.dataLayer),window.RevelystDataLayer.pushEcommerce("addToCart",{ecommerce:{add:{products:a.dataLayer.ecommerce&&a.dataLayer.ecommerce.items?t(a.dataLayer.ecommerce.items):[]}}}))})),e("body").on("afterRemoveFromCart",((e,a)=>{window.RevelystDataLayer.isEnabled()&&a.dataLayer&&(window.RevelystDataLayer.pushEcommerce(a.dataLayer.event,a.dataLayer),window.RevelystDataLayer.pushEcommerce("removeFromCart",{ecommerce:{remove:{products:a.dataLayer.ecommerce&&a.dataLayer.ecommerce.items?t(a.dataLayer.ecommerce.items):[]}}}))})),e("body").on("change",".quantity-form > .quantity",(function(){var a=e(this),o=parseInt(a.data("pre-select-qty"),10),n=parseInt(a.val(),10);if(!isNaN(o)&&!isNaN(n)&&o!==n){var i=a.closest(".product-line-item");i.length||(i=a.closest(".product-info"));var s=i.find(".remove-product").attr("data-gtmdata");if(s&&window.RevelystDataLayer.isEnabled()){var c;try{c=JSON.parse(s)}catch(e){return}var d=Math.abs(n-o);c.quantity=d,n>o?(window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.ADD_TO_CART,{ecommerce:{currency:r(window.dataLayer),value:(parseFloat(c.price)||0)*d,items:[c]}}),window.RevelystDataLayer.pushEcommerce("addToCart",{ecommerce:{add:{products:t([c])}}})):(window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.REMOVE_FROM_CART,{ecommerce:{currency:r(window.dataLayer),value:(parseFloat(c.price)||0)*d,items:[c]}}),window.RevelystDataLayer.pushEcommerce("removeFromCart",{ecommerce:{remove:{products:t([c])}}}))}}})),e("body").on("product:updateAddToCart",(function(e,t){if(t&&t.product&&t.product.gtmData){var a=JSON.stringify(t.product.gtmData),r=t.$productC
1ontainer;r&&r.length&&(r.find("button.add-to-cart, button.add-to-cart-global").data("gtmdata",t.product.gtmData).attr("data-gtmdata",a),r.find(".product[data-gtmdata]").data("gtmdata",t.product.gtmData).attr("data-gtmdata",a))}})),e("body").on("product:afterAttributeSelect",(function(e,t){var a=t&&t.data&&t.data.product;if(a&&a.gtmData&&window.RevelystDataLayer&&window.RevelystDataLayer.isEnabled()){var o=a.gtmData;window.ga4LastViewItemId!==o.item_id&&(window.ga4LastViewItemId=o.item_id,window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.VIEW_ITEM,{ecommerce:{currency:r(window.dataLayer),value:o.price||0,items:[o]}}))}}));var o={shipping:"checkout",payment:"checkout",placeOrder:"checkout",submitted:"confirmation"};function n(){var e=window.location.search.match(/(?:^|[?&])stage=([^&]*)/);return e?e[1]:""}var i=n();e("body").on("checkout:updateCheckoutView",(()=>{const e=n(),t=o[e];t&&window.RevelystDataLayer.isEnabled()&&e!==i&&(i=e,window.RevelystDataLayer.pushContext({page_type:t}),window.RevelystDataLayer.pushPageView({language:window.ga4PageContext&&window.ga4PageContext.language,page_type:t,page_title:window.ga4PageContext&&window.ga4PageContext.page_title}))})),e("body").on("login:success",((e,t)=>{window.RevelystDataLayer.pushEvent(window.RevelystDataLayer.EVENTS.LOGIN,Object.assign({method:"email"},a(t)))})),e("body").on("login:register:success",((t,r)=>{var o=e(t.target).closest("#auth-drawer").length?"auth_drawer":"account_page";window.RevelystDataLayer.pushEvent(window.RevelystDataLayer.EVENTS.SIGN_UP,Object.assign({method:"email",form_location:o},a(r)))})),e("body").on("submit",'form[name="simpleSearch"], form[role="search"], .search-form',(function(){const t=e(this).find('input[name="q"], .search-field').val();t&&t.trim().length>0&&window.RevelystDataLayer.pushEvent(window.RevelystDataLayer.EVENTS.SEARCH,{search_term:t.trim()})})),e("body").on("search:drawer:suggestions:shown",((t,a)=>{const o=a.searchQuery,n=e(".suggestions-products li");if(o&&window.RevelystDataLayer.pushEvent(window.RevelystDataLayer.EVENTS.SEARCH,{search_term:o.trim()}),n.length>0){const t=[];n.each(((a,r)=>{const o=e(r).data("gtmdata");o&&t.push(Object.assign({},o,{index:a}))})),t.length>0&&window.RevelystDataLayer.pushEcommerce(window.RevelystDataLayer.EVENTS.VIEW_ITEM_LIST,{ecommerce:{item_list_id:"search_suggestions_"+o.trim(),item_list_name:"Search Suggestions",currency:r(window.dataLayer),items:t}})}})),e("body").on("footer:email:subscribed",((e,t)=>{t&&t.ga4UserData&&window.RevelystDataLayer.setUserData(t.ga4UserData),window.RevelystDataLayer.pushEvent(window.RevelystDataLayer.EVENTS.GENERATE_LEAD,{currency:r(window.dataLayer),value:0,lead_source:"footer"}),window.RevelystDataLayer.pushEvent(window.RevelystDataLayer.EVENTS.SIGN_UP,{method:"newsletter",form_location:"footer",user_data:window.RevelystDataLayer.getUserData()||{logged_in:!1}})})),g(),p(e)}};!function e(t){void 0!==window.jQuery?t(window.jQuery):setTimeout((function(){e(t)}),50)}((function(e){e(document).ready((function(){var t=window.pageAction||null;t&&v[t]&&v[t](e),v.all(e)})),function(e){try{e(document).ajaxSuccess((function(e,t,a,r){if(a.dataTypes&&a.dataTypes.indexOf("json")>-1&&r&&"__gtmEvents"in r&&Array.isArray(r.__gtmEvents)){var o=window.RevelystDataLayer&&window.RevelystDataLayer.getUserData();r.__gtmEvents.forEach((function(e){e&&(o&&Object.prototype.hasOwnProperty.call(e,"event")?window.dataLayer.push(Object.assign({},e,{user_data:o})):window.dataLayer.push(e))}))}}))}catch(e){console.error(e)}}(e)}))})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.