MediaWiki: Common.js: Difference between revisions
From LINKS Community Center
Eschmidt (talk | contribs) No edit summary |
Eschmidt (talk | contribs) No edit summary |
||
Line 22: | Line 22: | ||
action: 'query', | action: 'query', | ||
list: 'recentchanges', | list: 'recentchanges', | ||
rcprop: 'title|user|timestamp', | |||
rclimit: '5', | rclimit: '5', | ||
format: 'json' | format: 'json' | ||
Line 28: | Line 28: | ||
url = url + '?origin=*' + params.toString(); | url = url + '?origin=*' + params.toString(); | ||
console.log(url); | |||
// Object.keys(params).forEach(function (key) { url += '&' + key + '=' + params[key]; }); | // Object.keys(params).forEach(function (key) { url += '&' + key + '=' + params[key]; }); | ||
Revision as of 14:09, 15 February 2022
/* Any JavaScript here will be loaded for all users on every page load. */ /* Matomo */ var _paq = window._paq = window._paq || []; /* Tracker methods like 'setCustomDimension' should be called before 'trackPageView'. */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function () { var u = '//analytics.safetyinnovation.center/'; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '11']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })(); /* End Matomo Code */ /* Recent Changes Start */ var changesWrapper = document.getElementById('recentChanges'); if (changesWrapper) { var url = 'https://links.communitycenter.eu/api.php'; var params = new URLSearchParams({ action: 'query', list: 'recentchanges', rcprop: 'title|user|timestamp', rclimit: '5', format: 'json' }); url = url + '?origin=*' + params.toString(); console.log(url); // Object.keys(params).forEach(function (key) { url += '&' + key + '=' + params[key]; }); fetch(url) .then(function (response) { return response.json(); }) .then(function (response) { var domStr = response.query.recentchanges.reduce(function (output, change) { return output + '<div class="recentChange">' + '<span>' + change.title + '</span>' + '<span>' + change.user + '</span>' + '<span>' + change.timestamp + '</span>' + '</div>' }, ''); changesWrapper.innerHTML = domStr; }) .catch(function (error) { console.log('Error in Recent Changes Widget', error); }); } /* Recent Changes End */