User:Euphoria/common.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
extract the username specifically from user contributions pages |
using a regular expression |
||
Line 7: | Line 7: | ||
// Check if the current page is a user contributions page |
// Check if the current page is a user contributions page |
||
if (mw.config.get('wgCanonicalSpecialPageName') === 'Contributions') { |
if (mw.config.get('wgCanonicalSpecialPageName') === 'Contributions') { |
||
// Extract username from the contributions page |
// Extract username from the contributions page using a regular expression |
||
var match = pageTitle.match(/Special:Contributions\/( |
var match = pageTitle.match(/Special:Contributions\/([^?]+)/); |
||
username = match ? match[1] : null; |
username = match ? match[1] : null; |
||
} else { |
} else { |
Revision as of 07:25, 10 November 2023
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, add the "SUL" link
if (isUserPage || isTalkPage || isContributionsPage) {
var sulLink = mw.util.addPortletLink(
'p-cactions',
mw.util.getUrl('Special:CentralAuth/' + username),
'SUL',
'ca-sul',
'SUL',
null,
'#ca-sul'
);
}
});