User:Euphoria/common.js: Difference between revisions

From Test Wiki
Jump to navigation Jump to search
Content deleted Content added
No edit summary
No edit summary
Line 1: Line 1:
mw.loader.using(['mediawiki.util'])
mw.loader.using(['mediawiki.util'])
.then(function () {
.then(function () {
// Extract the username from the current page title
// Extract the username from the end of the contributions page URL
var pageTitle = mw.config.get('wgRelevantPageName');
var username;
var username;


// 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 using the relevant page name
// Extract username from the end of the contributions page URL
var contributionsIndex = pageTitle.indexOf('/Contributions');
var pageTitle = mw.config.get('wgRelevantPageName');
var contributionsIndex = pageTitle.lastIndexOf('/Contributions/');
if (contributionsIndex !== -1) {
if (contributionsIndex !== -1) {
username = pageTitle.substring(contributionsIndex + '/Contributions'.length);
username = pageTitle.substring(contributionsIndex + '/Contributions/'.length);
}
}
} else {
} else {
// Extract username from the regular page title
// Extract username from the regular page title
username = pageTitle.split('/')[0];
username = mw.config.get('wgTitle').split('/')[0];
}
}


// Add the "SUL" link if the username is available
// Check if the current page is a user page, user talk page, or user contributions page, and add the "SUL" link
if (username) {
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 contributions page, remove the "/Contributions" part
if (isContributionsPage && username) {
var sulLink = mw.util.addPortletLink(
var sulLink = mw.util.addPortletLink(
'p-cactions',
'p-cactions',

Revision as of 07:50, 10 November 2023

mw.loader.using(['mediawiki.util'])
    .then(function () {
        // Extract the username from the end of the contributions page URL
        var username;

        // Check if the current page is a user contributions page
        if (mw.config.get('wgCanonicalSpecialPageName') === 'Contributions') {
            // Extract username from the end of the contributions page URL
            var pageTitle = mw.config.get('wgRelevantPageName');
            var contributionsIndex = pageTitle.lastIndexOf('/Contributions/');
            if (contributionsIndex !== -1) {
                username = pageTitle.substring(contributionsIndex + '/Contributions/'.length);
            }
        } else {
            // Extract username from the regular page title
            username = mw.config.get('wgTitle').split('/')[0];
        }

        // Add the "SUL" link if the username is available
        if (username) {
            var sulLink = mw.util.addPortletLink(
                'p-cactions',
                mw.util.getUrl('Special:CentralAuth/' + username),
                'SUL',
                'ca-sul',
                'SUL',
                null,
                '#ca-sul'
            );
        }
    });