Sha256: 233a29b6e5ee818d2cb27f120a799208290ff2904a3c76a3f23ae8ff8295ee7d
Contents?: true
Size: 1.81 KB
Versions: 10
Compression:
Stored size: 1.81 KB
Contents
// Stageprompt 2.0.1 // // See: https://github.com/alphagov/stageprompt // // Stageprompt allows user journeys to be described and instrumented // using data attributes. // // Setup (run this on document ready): // // GOVUK.performance.stageprompt.setupForGoogleAnalytics(); // // Usage: // // Sending events on page load: // // <div id="wrapper" class="service" data-journey="pay-register-birth-abroad:start"> // [...] // </div> // // Sending events on click: // // <a class="help-button" href="#" data-journey-click="stage:help:info">See more info...</a> (function(global) { "use strict"; var $ = global.jQuery; var GOVUK = global.GOVUK || {}; GOVUK.performance = GOVUK.performance || {}; GOVUK.performance.stageprompt = (function () { var setup, setupForGoogleAnalytics, splitAction; splitAction = function (action) { var parts = action.split(':'); if (parts.length <= 3) return parts; return [parts.shift(), parts.shift(), parts.join(':')]; }; setup = function (analyticsCallback) { var journeyStage = $('[data-journey]').attr('data-journey'), journeyHelpers = $('[data-journey-click]'); if (journeyStage) { analyticsCallback.apply(null, splitAction(journeyStage)); } journeyHelpers.on('click', function (event) { analyticsCallback.apply(null, splitAction($(this).data('journey-click'))); }); }; setupForGoogleAnalytics = function () { setup(GOVUK.performance.sendGoogleAnalyticsEvent); }; return { setup: setup, setupForGoogleAnalytics: setupForGoogleAnalytics }; }()); GOVUK.performance.sendGoogleAnalyticsEvent = function (category, event, label) { _gaq.push(['_trackEvent', category, event, label, undefined, true]); }; global.GOVUK = GOVUK; })(window);
Version data entries
10 entries across 10 versions & 1 rubygems