This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const copyFromWindow = require('copyFromWindow'); | |
const injectScript = require('injectScript'); | |
const CallTrackingObject = 'mtls'; | |
if(copyFromWindow(CallTrackingObject)) { | |
// matelso already loaded | |
data.gtmOnFailure(); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* THE STANDARD.. | |
* | |
*/ | |
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': | |
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], | |
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= | |
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); | |
})(window,document,'script','dataLayer','GTM-XXXXXXX'); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
response.headers.append('Set-Cookie', `_ga=${["GA1", trackingDomain.split('.').length, crypto.getRandomValues(new Uint32Array(1))[0] & 2147483647, Math.round((new Date).getTime() / 1E3)].join(".")}; Domain=.${trackingDomain}; Max-Age=63072000;`); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
addEventListener('fetch', event => { | |
if(event.request.url.indexOf('/collect') > -1) | |
event.waitUntil(process(event.request)) | |
event.respondWith(new Response('',{status:200})) | |
}) | |
/** | |
* CONFIG SECTION | |
*/ | |
const ANALYTICS_URL = 'https://www.google-analytics.com' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function () { | |
return function (model) { | |
var proxyDomain = "https://<yourdomain.com>/collect"; | |
var proxySendHitTask = function () { | |
function pixel(hitPayload) { | |
var result = false; | |
try { | |
document.createElement("img").src = proxyDomain + "?" + hitPayload, result = true | |
} catch (e) {} | |
return result |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Main worker entry point. | |
* | |
*/ | |
addEventListener("fetch", event => { | |
// Fail-safe in case of an unhandled exception | |
event.passThroughOnException(); | |
event.respondWith(processRequest(event.request, event)); | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const analyticsId = 'UA-xxxxxxxxx-x' | |
addEventListener('fetch', event => { | |
event.respondWith(handleRequest(event)) | |
}) | |
/** | |
* Check request object for Googlebot UA to send tracking data | |
* @param {Event} event | |
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<script> | |
(function(){ | |
var xmlhttp = new XMLHttpRequest(); | |
var db = "https://your-database.firebaseio.com/"+{{Client Id}}.replace(/\./g,"_")+".json"; | |
xmlhttp.onreadystatechange = function() { | |
if (this.readyState == 4 && this.status == 200) { | |
window.gaIds = JSON.parse(this.responseText); | |
} | |
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Analytics Segment Provision in Tag Manager | |
* @author: Dustin Recko | |
* | |
*/ | |
var TAG_MANAGER_CONFIG = { | |
accountId: '', | |
containerId: '', | |
workspaceId: '' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* AdWords Performance Monitoring in Slack via Labels | |
* @author: Dustin Recko | |
* | |
*/ | |
// Config Section //> | |
var DB_URL = 'https://...'; // The Firebase Database URL | |
var DB_AUTH = 'xxx'; // The Firebase Database Secret |
NewerOlder