MediaWiki:Common.js: Difference between revisions

From MDrivenWiki
No edit summary
No edit summary
Line 63: Line 63:
     });
     });
});
});
(function() {
    document.addEventListener('DOMContentLoaded', function() {
        var form = document.querySelector('.namespace-search-form');
        if (form) {
            form.addEventListener('submit', function(e) {
                var input = form.querySelector('#bs-extendedsearch-input');
                if (input) {
                    var namespace = mw.config.get('wgCanonicalNamespace');
                    if (namespace && namespace.length > 0) {
                        input.value = namespace + ": " + input.value;
                    }
                }
            });
        }
    });
})();

Revision as of 21:36, 26 October 2023

/* Any JavaScript here will be loaded for all users on every page load. */
$(document).ready(function () {
    $.get(mw.util.wikiScript('api'), {
        action: 'query',
        meta: 'userinfo',
        format: 'json'
    }).done(function (data) {
        if (data.query.userinfo.id !== 0) { 
            var username = data.query.userinfo.name;
            var userLink = mw.util.getUrl('User:' + username);
            $('#user-info').html('<a href="' + userLink + '" class="text-white">' + username + '</a>');
        }
    });
});


document.getElementById('offcanvas-toggler').addEventListener('click', function() {
    var sidebar = document.getElementById('offcanvas-menu');
    if (sidebar.classList.contains('show')) {
        sidebar.classList.remove('show');
    } else {
        sidebar.classList.add('show');
    }
});


(function() {
    function toggleSection(header) {
        var submenu = header.nextElementSibling;
        var menuState = JSON.parse(localStorage.getItem('menuState') || '{}');
        var menuKey = header.innerText.trim();
        if (submenu.style.display === "none" || submenu.style.display === "") {
            submenu.style.display = "block";
            menuState[menuKey] = 'block';
        } else {
            submenu.style.display = "none";
            menuState[menuKey] = 'none';
        }
        localStorage.setItem('menuState', JSON.stringify(menuState));
    }

    window.toggleSection = toggleSection; 

    window.onload = function() {
        var menuState = JSON.parse(localStorage.getItem('menuState') || '{}');
        var headers = document.querySelectorAll('.menu-header');
        headers.forEach(function(header, index) {
            var menuKey = header.innerText.trim();
            var submenu = header.nextElementSibling;
            if (menuState.hasOwnProperty(menuKey)) {
                submenu.style.display = menuState[menuKey];
            } else {
                submenu.style.display = 'none';
            }
        });
    };
})();


$(document).ready(function() {
    $('#offcanvas-close').on('click', function() {
        $('#offcanvas-menu').removeClass('show');
    });
});

(function() {
    document.addEventListener('DOMContentLoaded', function() {
        var form = document.querySelector('.namespace-search-form');
        if (form) {
            form.addEventListener('submit', function(e) {
                var input = form.querySelector('#bs-extendedsearch-input');
                if (input) {
                    var namespace = mw.config.get('wgCanonicalNamespace');
                    if (namespace && namespace.length > 0) {
                        input.value = namespace + ": " + input.value;
                    }
                }
            });
        }
    });
})();
This page was edited 25 days ago on 08/26/2024. What links here