Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions lib/controller/auth-form.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/

var app = require('../app'),
tracking = require('../core/tracking');
analytics = require('../core/analytics');

app.controller('AuthController', ['$scope', '$rootScope', '$element', 'API', 'AUTH', function ($scope, $rootScope, $element, api, auth) {
var loginForm = $element.find('kano-login-form')[0],
Expand All @@ -28,7 +28,7 @@ app.controller('AuthController', ['$scope', '$rootScope', '$element', 'API', 'AU

$scope.onLoginSuccess = function (ev) {
var user = ev.details.user;
tracking.event('Login success', {
analytics.track('Login success', {
id: user.id,
email: user.email,
username: user.username
Expand All @@ -37,7 +37,7 @@ app.controller('AuthController', ['$scope', '$rootScope', '$element', 'API', 'AU

$scope.onSignupSuccess = function (ev) {
var user = ev.details.user;
tracking.event('Registration Completed', {
analytics.track('Registration Completed', {
username: user.username
});
};
Expand Down
37 changes: 16 additions & 21 deletions lib/core/analytics.js
Original file line number Diff line number Diff line change
@@ -1,25 +1,16 @@
var config = window.CONFIG,
analytics = window.analytics;

/*
* Analytics module
*
* Wrapper to Segment.io analytics
* More documentation at: https://segment.com/docs/libraries/analytics.js
*/

var enabled = config.SEGMENTIO_ID && !config.OFFLINE && analytics;
* Currently we are using Google Analytics with Google Tag Manager
*/

/*
* Initialise Segment.io if `SEGMENTIO_ID` is present in config, start
* Initialise start
* tracking page views
*
* @return void
*/
exports.init = function () {
if (!enabled) { return; }

window.analytics.load(config.SEGMENTIO_ID);
return;
};

/*
Expand All @@ -29,9 +20,15 @@ exports.init = function () {
* @return void
*/
exports.page = function (pageId) {
if (!enabled) { return; }
if (!pageId) {
return;
}

window.analytics.page(pageId);
dataLayer.push({
'event' : 'virtualPageView',
'virtualPageTitle' : document.title,
'virtualPageURL' : pageId
});
};

/*
Expand All @@ -48,9 +45,8 @@ exports.page = function (pageId) {
* @return void
*/
exports.identify = function (userId, traits, options, callback) {
if (!enabled) { return; }

window.analytics.identify(userId, traits, options, callback);
// Not used - switched to GA
return;
};

/*
Expand All @@ -65,7 +61,6 @@ exports.identify = function (userId, traits, options, callback) {
* @return void
*/
exports.track = function (event, properties, options, callback) {
if (!enabled) { return; }

window.analytics.track(event, properties, options, callback);
// Not used - switched to GA
return;
};
4 changes: 2 additions & 2 deletions lib/core/auth.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

var api,
user = null,
tracking = require('./tracking');
analytics = require('./analytics');

/*
* Get user object if logged in
Expand Down Expand Up @@ -49,7 +49,7 @@ function auth (config) {
user = session.user;
},
logout : function () {
tracking.event('Logout', {
analytics.track('Logout', {
user: {
id : user.id,
username : user.username,
Expand Down
48 changes: 0 additions & 48 deletions lib/core/tracking.js

This file was deleted.

23 changes: 13 additions & 10 deletions views/index.jade
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ html(lang='en', xmlns:ng="http://angularjs.org")
link(href='/css/main.css', rel='stylesheet', type='text/css')

script(type="text/javascript").
var dataLayer = [];
(function() {
window.XMLHttpRequest = window.XMLHttpRequest || (function() {
return new window.ActiveXObject("Microsoft.XMLHTTP");
Expand All @@ -24,16 +25,7 @@ html(lang='en', xmlns:ng="http://angularjs.org")
script(src='/js/vendor/xtag.js')

body(id="ng-app", ng-app='draw', class=offline ? 'offline' : 'online')
//- Google Tag Manager
noscript
iframe(src='//www.googletagmanager.com/ns.html?id=GTM-WMGKFR', height='0', width='0', style='display: none; visibility: hidden;')
script(type='text/javascript').
(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=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-WMGKFR');
//- End Google Tag Manager


script(src='/js/vendor/console-polyfill.js', type='text/javascript')
.loading-overlay(ng-cloak): .spinner
Expand Down Expand Up @@ -78,3 +70,14 @@ html(lang='en', xmlns:ng="http://angularjs.org")
//- Livereload
if !production
script(src='http://localhost:35729/livereload.js?snipver=1', type='text/javascript')

//- Google Tag Manager
noscript
iframe(src='//www.googletagmanager.com/ns.html?id=GTM-WMGKFR', height='0', width='0', style='display: none; visibility: hidden;')
script(type='text/javascript').
(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=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-WMGKFR');
//- End Google Tag Manager