diff --git a/app/assets/javascripts/analytics.js b/app/assets/javascripts/analytics.js new file mode 100644 index 000000000..7ad7402cd --- /dev/null +++ b/app/assets/javascripts/analytics.js @@ -0,0 +1,32 @@ +(function(Modules) { + "use strict"; + + if (!ga) return; + + function sendEvent(category, action, label) { + + ga('send', 'event', category, action, label); + + } + + Modules.TrackError = function() { + + this.start = component => sendEvent( + 'Error', + $(component).data('error-type'), + $(component).data('error-label') + ); + + }; + + Modules.TrackEvent = function() { + + this.start = component => sendEvent( + $(component).data('event-category'), + $(component).data('event-action'), + $(component).data('event-label') + ); + + }; + +})(window.GOVUK.Modules); diff --git a/app/assets/javascripts/errorTracking.js b/app/assets/javascripts/errorTracking.js deleted file mode 100644 index 3b7053841..000000000 --- a/app/assets/javascripts/errorTracking.js +++ /dev/null @@ -1,22 +0,0 @@ -(function(Modules) { - "use strict"; - - Modules.TrackError = function() { - - this.start = function(component) { - - if (!ga) return; - - ga( - 'send', - 'event', - 'Error', - $(component).data('error-type'), - $(component).data('error-label') - ); - - }; - - }; - -})(window.GOVUK.Modules); diff --git a/app/templates/withnav_template.html b/app/templates/withnav_template.html index c03b77803..da950a60d 100644 --- a/app/templates/withnav_template.html +++ b/app/templates/withnav_template.html @@ -10,7 +10,13 @@
diff --git a/gulpfile.babel.js b/gulpfile.babel.js index b1a6ab92e..60b66f28a 100644 --- a/gulpfile.babel.js +++ b/gulpfile.babel.js @@ -70,7 +70,7 @@ gulp.task('javascripts', () => gulp paths.src + 'javascripts/updateContent.js', paths.src + 'javascripts/listEntry.js', paths.src + 'javascripts/liveSearch.js', - paths.src + 'javascripts/errorTracking.js', + paths.src + 'javascripts/analytics.js', paths.src + 'javascripts/preventDuplicateFormSubmissions.js', paths.src + 'javascripts/fullscreenTable.js', paths.src + 'javascripts/conditionalRadios.js',