Sha256: 21e7e320be50adb6ff42b8195487d2823027bd01cb6dc97b00599c2adde63165

Contents?: true

Size: 957 Bytes

Versions: 1

Compression:

Stored size: 957 Bytes

Contents

// Extension to monitor attempts to print pages.
(function () {
  "use strict";

  GOVUK.analyticsPlugins = GOVUK.analyticsPlugins || {};

  GOVUK.analyticsPlugins.printIntent = function () {
    var printAttempt = (function () {
      GOVUK.analytics.trackEvent('Print Intent', document.location.pathname);
    });

    // Most browsers
    if (window.matchMedia) {
      var mediaQueryList = window.matchMedia('print'),
        mqlListenerCount = 0;
      mediaQueryList.addListener(function (mql) {
        if (!mql.matches && mqlListenerCount === 0) {
          printAttempt();
          mqlListenerCount++;
          // If we try and print again in 3 seconds, don't log it
          window.setTimeout(function () {
            mqlListenerCount = 0;
            // printing will be tracked again now
          }, 1e3);
        }
      });
    }

    // IE < 10
    if (window.onafterprint) {
      window.onafterprint = printAttempt;
    }

  };

}());

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
govuk_frontend_toolkit-3.2.1 app/assets/javascripts/govuk/analytics/print-intent.js