MediaWiki:Common.js: Difference between revisions

From BetaMC Wiki
Jump to navigation Jump to search
test for js
Actually works, lets go!
 
(5 intermediate revisions by 2 users not shown)
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. */


function playerCountCall(data) {
// needs to be loaded from separate JS files, because the shitty outdated JS-parser in mediawiki refuses any modern syntax lol
    var el = document.getElementById('betamc-player-count');
var args = { action: 'raw', ctype: 'text/javascript' };
    if (!el) return;
function script(name) {
 
     return function() {
  //test for the moment to see if js works
         return mw.loader.getScript(
     if (data && data.players && Array.isArray(data.players)) {
            mw.util.getUrl('MediaWiki:' + name + '.js', {
         el.textContent = data.players.length;
                action: 'raw',
    } else if (data && typeof data.count === 'number') {
                ctype: 'text/javascript'
        el.textContent = data.count;
            })
    } else {
         );
        el.textContent = 'Error';
    }
}
 
function loadPlayerCount() {
    var script = document.createElement('script');
    script.src = 'https://betamc.org:8080/api/players?callback=playerCountCall';
    script.onerror = function() {
         var el = document.getElementById('betamc-player-count');
        if (el) el.textContent = 'Error';
     };
     };
    document.body.appendChild(script);
}
}


document.addEventListener('DOMContentLoaded', loadPlayerCount);
Promise.resolve()
    .then(script('StatsClient'))
    .then(script('ClamComponent'))
;

Latest revision as of 11:28, 8 October 2026

/* Any JavaScript here will be loaded for all users on every page load. */

// needs to be loaded from separate JS files, because the shitty outdated JS-parser in mediawiki refuses any modern syntax lol
var args = { action: 'raw', ctype: 'text/javascript' };
function script(name) {
    return function() {
        return mw.loader.getScript(
            mw.util.getUrl('MediaWiki:' + name + '.js', {
                action: 'raw',
                ctype: 'text/javascript'
            })
        );
    };
}

Promise.resolve()
    .then(script('StatsClient'))
    .then(script('ClamComponent'))
;