Jump to content

MediaWiki:Common.js: Difference between revisions

From The Shivo Library
No edit summary
No edit summary
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. */
mw.loader.using('mediawiki.util').then(function () {
 
// Ensure that the appearance section is expanded
mw.loader.using(['mediawiki.util', 'mediawiki.api']).then(function () {
     var appearanceSection = document.querySelector('#p-appearance');
     var appearanceSection = document.querySelector('#p-appearance');
     if (appearanceSection && appearanceSection.classList.contains('collapsed')) {
     if (appearanceSection && appearanceSection.classList.contains('collapsed')) {
Line 8: Line 10:


(function() {
(function() {
     // Ensure the script runs after the DOM is fully loaded
     // Ensure the script runs as early as possible
     document.addEventListener('DOMContentLoaded', function() {
     function enforceDarkMode() {
         // Add classes to enforce dark mode
         // Add classes to enforce dark mode
         document.documentElement.classList.add('vector-feature-night-mode-enabled', 'skin-theme-clientpref-night');
         document.documentElement.classList.add('vector-feature-night-mode-enabled', 'skin-theme-clientpref-night');


         // Optionally, remove any existing light mode classes if present
         // Remove any existing light mode classes if present
         document.documentElement.classList.remove('skin-theme-clientpref-day');
         document.documentElement.classList.remove('skin-theme-clientpref-day');
     });
     }
 
    // Check if the DOM is already loaded
    if (document.readyState === 'complete' || document.readyState === 'interactive') {
        enforceDarkMode();
    } else {
        document.addEventListener('DOMContentLoaded', enforceDarkMode);
    }
})();
})();

Revision as of 08:08, 28 January 2025

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

// Ensure that the appearance section is expanded
mw.loader.using(['mediawiki.util', 'mediawiki.api']).then(function () {
    var appearanceSection = document.querySelector('#p-appearance');
    if (appearanceSection && appearanceSection.classList.contains('collapsed')) {
        appearanceSection.classList.remove('collapsed');
    }
});

(function() {
    // Ensure the script runs as early as possible
    function enforceDarkMode() {
        // Add classes to enforce dark mode
        document.documentElement.classList.add('vector-feature-night-mode-enabled', 'skin-theme-clientpref-night');

        // Remove any existing light mode classes if present
        document.documentElement.classList.remove('skin-theme-clientpref-day');
    }

    // Check if the DOM is already loaded
    if (document.readyState === 'complete' || document.readyState === 'interactive') {
        enforceDarkMode();
    } else {
        document.addEventListener('DOMContentLoaded', enforceDarkMode);
    }
})();