User:Euphoria/common.js
From Test Wiki
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
mw.loader.using(['mediawiki.util'])
.then(function () {
// Extract the username from the current page title
var pageTitle = mw.config.get('wgTitle');
var username;
// Check if the current page is a user contributions page
if (mw.config.get('wgCanonicalSpecialPageName') === 'Contributions') {
// Extract username from the contributions page using a regular expression
var match = pageTitle.match(/Special:Contributions\/([^\/?]+)/);
username = match ? match[1] : null;
} else {
// Extract username from the regular page title
username = pageTitle.split('/')[0];
}
// Check if the current page is a user page, user talk page, or user contributions page
var isUserPage = mw.config.get('wgNamespaceNumber') === 2; // User namespace
var isTalkPage = mw.config.get('wgNamespaceNumber') === 3; // User talk namespace
var isContributionsPage = mw.config.get('wgCanonicalSpecialPageName') === 'Contributions';
// If the current page is a user page, user talk page, or user contributions page, and a valid username is available, add the "SUL" link
if ((isUserPage || isTalkPage || isContributionsPage) && username !== null) {
var sulLink = mw.util.addPortletLink(
'p-cactions',
mw.util.getUrl('Special:CentralAuth/' + username),
'SUL',
'ca-sul',
'SUL',
null,
'#ca-sul'
);
}
});