TEXT   152
function firePromoAnalytics
Guest on 26th December 2024 05:14:38 AM


  1. function firePromoAnalytics(e) {
  2.         try {
  3.             var analytics = document.getElementById("pageAnalytics");
  4.             if (analytics) {
  5.                 var bpt = window.ga_data.route.basePageType,
  6.                     ssts = window.ga_data.route.ssts.replace('/', ':'),
  7.                     parent = getParentByTagName(e.target, 'A'),
  8.                     index = e.target.dataset.index || parent.dataset.index || 0,
  9.                     localName = e.target.dataset.moduleName || parent.dataset.moduleName || '';
  10.  
  11.                 if (bpt === 'homefront') {
  12.                     ssts = 'home'
  13.                 }
  14.  
  15.                 if (index && parseInt(index)) {
  16.                     index = parseInt(index);
  17.                 }
  18.  
  19.                 var eventString = bpt + ':' + ssts + ':' + localName + ':' + index;
  20.                 analytics.fireEvent(eventString, {}, true);
  21.             } else {
  22.                 if (window.newrelic) window.newrelic.noticeError('page analytics tag not found');
  23.             }
  24.         } catch (ex) {
  25.             if (window.newrelic) window.newrelic.noticeError(ex);
  26.         }
  27.     }
  28.  
  29.     function getParentByTagName(el, tag) {
  30.         while ((el = el.parentElement) && el.tagName !== tag);
  31.         return el;
  32.     }

Raw Paste

Login or Register to edit or fork this paste. It's free.