feat(analytics): add analytics on deploy script (#32)

This commit is contained in:
David Litvak Bruno
2017-11-07 16:39:33 +01:00
committed by Benedikt Rötsch
parent 85d5e0faed
commit 146c01643b
6 changed files with 113 additions and 40 deletions

44
bin/vendor/analytics.html vendored Normal file
View File

@@ -0,0 +1,44 @@
<!-- Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-109296848-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-40725207-13');
</script>
<!-- Google Analytics end -->
<!-- Snowplow starts plowing -->
<script async>
;(function(p,l,o,w,i,n,g){if(!p[i]){p.GlobalSnowplowNamespace=p.GlobalSnowplowNamespace||[];
p.GlobalSnowplowNamespace.push(i);p[i]=function(){(p[i].q=p[i].q||[]).push(arguments)
};p[i].q=p[i].q||[];n=l.createElement(o);g=l.getElementsByTagName(o)[0];n.async=1;
n.src=w;g.parentNode.insertBefore(n,g)}}(window,document,"script","//d1fc8wv8zag5ca.cloudfront.net/2.8.2/sp.js","snowplow"));
snowplow('newTracker', 'defaultTracker', 'col.contentful.com', {
appId: 'the_example_app',
platform: 'web',
respectDoNotTrack: true,
bufferSize: 1,
cookieDomain: window.location.host,
contexts: {
webPage: true,
gaCookies: true,
geolocation: false
}
});
snowplow('trackPageView');
const space_id = decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*" + encodeURIComponent('space_id').replace(/[\-\.\+\*]/g, "\\$&") + "\\s*\\=\\s*([^;]*).*$)|^.*$"), "$1")) || null;
snowplow('trackSelfDescribingEvent', {
schema: 'iglu:com.contentful/app_the_example_app_open/jsonschema/1-0-0',
data: {
space_id,
sdk_language_used: 'javascript',
app_framework: 'nodejs'
}
});
</script>
<!-- Snowplow stops plowing -->

13
bin/vendor/deploy.sh vendored Executable file
View File

@@ -0,0 +1,13 @@
#!/bin/bash
set -e
analytics_file="../bin/vendor/analytics.html"
layout_file="$(dirname $0)/../../views/layout.pug"
# Replace analytics script in layout
distro=`uname`
if [[ $distro != 'Linux' ]]; then
sed -i '' 's,'"<!--ANALYTICS-->,include $analytics_file"',g' "$layout_file"
else # If running on macOS, the sed command has different syntax
sed -i 's,'"<!--ANALYTICS-->,include $analytics_file"',g' "$layout_file"
fi