-
-
Save planetahuevo/3822c05a4f1e4e9365da0fec7ce23219 to your computer and use it in GitHub Desktop.
Adding Google Tag Manager variables to intercomSettings
This file contains hidden or 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> | |
// app ID | |
var intercomSettings = { | |
app_id: "{{IC - Dynamic app ID}}" | |
}; | |
// Verifies and cleans all GTM variables | |
function pushGTMVariablesToIntercom(gtmKey, gtmValue) { | |
if("{{User - Account - Type}}" != "Guest"){ | |
if(gtmValue != null && gtmValue != "" && gtmValue != "undefined") { | |
if(typeof gtmValue == "string") { | |
gtmValue = gtmValue.trim(); | |
if(gtmValue == "") { | |
return false; | |
} | |
} | |
intercomSettings[gtmKey] = gtmValue; | |
return true; | |
} | |
return false; | |
} | |
return false; | |
} | |
// Default variables | |
pushGTMVariablesToIntercom("user_id", "{{User - Account - ID}}"); | |
pushGTMVariablesToIntercom("user_hash", "{{User - Account - Hash}}"); | |
pushGTMVariablesToIntercom("email", "{{User - Account - Email}}"); | |
pushGTMVariablesToIntercom("created_at", "{{User - Account - Registration date}}"); | |
pushGTMVariablesToIntercom("name", "{{User - Account - First name}}" + " " + "{{User - Account - Last name}}"); | |
// Custom variables example | |
pushGTMVariablesToIntercom("user_services", "{{User - Account - Services}}"); | |
</script> | |
<script>(function() {var w = window;var ic = w.Intercom;if (typeof ic === "function") {ic('reattach_activator');ic('update', intercomSettings);} else {var d = document;var i = function() {i.c(arguments)};i.q = [];i.c = function(args) {i.q.push(args)};w.Intercom = i;var s = d.createElement('script');s.type = 'text/javascript';s.async = true; | |
s.src = 'https://widget.intercom.io/widget/{{IC - Dynamic app ID}}'; | |
var x = d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s, x);}})(); | |
</script> | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment