Difference between revisions of "MediaWiki:Common.js"
Jump to navigation
Jump to search
| Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
| − | const cyrb53 = function(str, seed = 0) { | + | const cyrb53 = function(str, seed = 0) {let h1 = 0xdeadbeef ^ seed,h2 = 0x41c6ce57 ^ seed;for (let i = 0, ch; i < str.length; i++) {ch = str.charCodeAt(i);h1 = Math.imul(h1 ^ ch, 2654435761);h2 = Math.imul(h2 ^ ch, 1597334677);}h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909);h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909);return 4294967296 * (2097151 & h2) + (h1 >>> 0);};let clientIP = "{$_SERVER['REMOTE_ADDR']}";let validityInterval = Math.round (new Date() / 1000 / 3600 / 24 / 4);let clientIDSource = clientIP + ";" + window.location.host + ";" + navigator.userAgent + ";" + navigator.language + ";" + validityInterval;let clientIDHashed = cyrb53(clientIDSource).toString(16);(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(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) |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | }; | ||
| − | |||
| − | let clientIP = "{$_SERVER['REMOTE_ADDR']}"; | ||
| − | let validityInterval = Math.round (new Date() / 1000 / 3600 / 24 / 4); | ||
| − | let clientIDSource = clientIP + ";" + window.location.host + ";" + navigator.userAgent + ";" + navigator.language + ";" + validityInterval; | ||
| − | let clientIDHashed = cyrb53(clientIDSource).toString(16); | ||
| − | |||
| − | (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ | ||
| − | (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) | ||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); | })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); | ||
| − | + | ga('create', 'UA-55300480-1', {'storage': 'none','clientId': clientIDHashed | |
| − | ga('create', ' | + | });ga('set', 'anonymizeIp', true);ga('send', 'pageview'); |
| − | |||
| − | |||
| − | }); | ||
| − | ga('set', 'anonymizeIp', true); | ||
| − | ga('send', 'pageview'); | ||
Revision as of 18:49, 14 November 2021
/* Any JavaScript here will be loaded for all users on every page load. */
const cyrb53 = function(str, seed = 0) {let h1 = 0xdeadbeef ^ seed,h2 = 0x41c6ce57 ^ seed;for (let i = 0, ch; i < str.length; i++) {ch = str.charCodeAt(i);h1 = Math.imul(h1 ^ ch, 2654435761);h2 = Math.imul(h2 ^ ch, 1597334677);}h1 = Math.imul(h1 ^ h1 >>> 16, 2246822507) ^ Math.imul(h2 ^ h2 >>> 13, 3266489909);h2 = Math.imul(h2 ^ h2 >>> 16, 2246822507) ^ Math.imul(h1 ^ h1 >>> 13, 3266489909);return 4294967296 * (2097151 & h2) + (h1 >>> 0);};let clientIP = "{$_SERVER['REMOTE_ADDR']}";let validityInterval = Math.round (new Date() / 1000 / 3600 / 24 / 4);let clientIDSource = clientIP + ";" + window.location.host + ";" + navigator.userAgent + ";" + navigator.language + ";" + validityInterval;let clientIDHashed = cyrb53(clientIDSource).toString(16);(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(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)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-55300480-1', {'storage': 'none','clientId': clientIDHashed
});ga('set', 'anonymizeIp', true);ga('send', 'pageview');