You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

analytics.js 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /* global ga */
  2. /* eslint-disable indent */
  3. (function (ctx) {
  4. function Analytics() {
  5. /* eslint-disable semi */
  6. /**
  7. * Google Analytics
  8. */
  9. (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  10. (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  11. })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  12. ga('create', 'UA-319188-14', 'jit.si');
  13. ga('send', 'pageview');
  14. /* eslint-enable semi */
  15. }
  16. Analytics.prototype.sendEvent = function (action, data) {
  17. // empty label if missing value for it and add the value,
  18. // the value should be integer or null
  19. var value = data.value;
  20. value = value? Math.round(parseFloat(value)) : null;
  21. var label = data.label || "";
  22. ga('send', 'event', 'jit.si',
  23. action + '.' + data.browserName, label, value);
  24. };
  25. if (typeof ctx.JitsiMeetJS === "undefined")
  26. ctx.JitsiMeetJS = {};
  27. if (typeof ctx.JitsiMeetJS.app === "undefined")
  28. ctx.JitsiMeetJS.app = {};
  29. if (typeof ctx.JitsiMeetJS.app.analyticsHandlers === "undefined")
  30. ctx.JitsiMeetJS.app.analyticsHandlers = [];
  31. ctx.JitsiMeetJS.app.analyticsHandlers.push(Analytics);
  32. }(window));