More languages
More actions
No edit summary |
No edit summary |
||
Line 57: | Line 57: | ||
**/ | **/ | ||
(function(mw) { | (function(mw) { | ||
// | // Use mw.loader.using to load required modules | ||
mw.loader.using('mediawiki.user').done(function() { | mw.loader.using(['mediawiki.user']).done(function() { | ||
// Check that the user is not logged in | // Check that the user is not logged in | ||
if (mw.user.getId() === 0) { | if (mw.user.getId() === 0) { | ||
Line 72: | Line 72: | ||
} | } | ||
}); | }); | ||
}(mediaWiki | })(mediaWiki); | ||
//</nowiki> | //</nowiki> |
Revision as of 16:24, 19 September 2023
/* All JavaScript here will be loaded for users of the Citizen skin */
"use strict";
/**
* Adds icons for the Citizen skin toggle menu
*
**/
/* obsolete while menu icons are loaded by CSS.
(function($, mw) {
var $ul = $('#p-Navigation').children()[1]; // This selects the <ul> list of elements
for (var i=0;i<$ul.children.length;i++) {
var $a = $ul.children[i].children[0];
var $span = $('<span>').text("")
.addClass('citizen-ui-icon')
switch ($a.text) {
case " Main page":
if (mw.config.get('wgIsMainPage')) {
$ul.children[i].remove();
}
break;
case "Library":
$span.addClass('prolewiki-ui-icon-library')
$a.prepend($span[0]);
break;
case "Wanted pages":
$span.addClass('prolewiki-ui-icon-wanted')
$a.prepend($span[0]);
break;
case "Recruitment":
$span.addClass('prolewiki-ui-icon-recruitment');
$a.prepend($span[0]);
break;
case "Special pages":
$span.addClass('prolewiki-ui-icon-special')
$a.prepend($span[0]);
break;
case "Upload file":
$span.addClass('prolewiki-ui-icon-upload')
$a.prepend($span[0]);
break;
}
}
}(jQuery, mediaWiki)); */
/* Adds Sandbox icon for the Citizen skin preferences menu */
(function($, mw) {
var $a = $('#pt-sandbox').children()[0];
var $span = $('<span>')
.addClass('citizen-ui-icon')
.addClass('prolewiki-ui-icon-sandbox');
$a.prepend($span[0]);
}(jQuery, mediaWiki));
/**
* Append edit button to non-logged in users that redirects to Request Account.
**/
(function(mw) {
// Use mw.loader.using to load required modules
mw.loader.using(['mediawiki.user']).done(function() {
// Check that the user is not logged in
if (mw.user.getId() === 0) {
// Create the HTML for the "request account" edit button. Styled in MediaWiki:Citizen.css
var requestAccountEditBtn = '<li id="ca-ve-edit" class="mw-list-item">' +
'<a href="/index.php?title=Special:RequestAccount" title="Edit page">Edit this page</a>' +
'</li>';
// Insert the button after the #ca-history element
var historyElement = document.getElementById('ca-history');
if (historyElement) {
historyElement.insertAdjacentHTML('afterend', requestAccountEditBtn);
}
}
});
})(mediaWiki);
//</nowiki>