Jump to content

MediaWiki:Common.js

From Farmpedia – Agricultural Encyclopedia for Farmers
Revision as of 17:01, 14 April 2026 by Mamta (talk | contribs)

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)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* Force viewport meta for mobile responsiveness */
(function() {
    var existing = document.querySelector('meta[name="viewport"]');
    if (existing) {
        existing.setAttribute('content', 'width=device-width, initial-scale=1');
    } else {
        var meta = document.createElement('meta');
        meta.name = 'viewport';
        meta.content = 'width=device-width, initial-scale=1';
        document.head.appendChild(meta);
    }
})();

$(document).ready(function () {

    /* ===== PIN MAIN MENU ON DESKTOP ===== */
    if (window.innerWidth >= 1000) {
        var pinnedContainer = document.getElementById('vector-main-menu-pinned-container');
        var unpinnedContainer = document.getElementById('vector-main-menu-unpinned-container');
        var mainMenu = document.getElementById('vector-main-menu');

        if (unpinnedContainer && mainMenu) {
            if (pinnedContainer && !pinnedContainer.contains(mainMenu)) {
                pinnedContainer.appendChild(mainMenu);
            }
        }

        // Click pin button if available
        var pinButton = document.querySelector('.vector-pinnable-header-pin-button');
        if (pinButton) pinButton.click();
    }

    /* ===== MOVE TRANSLATE LINK INTO SIDEBAR ===== */
    // Find translate link from Tools menu
    var $translateLi = $('#p-tb li').filter(function () {
        return $(this).find('a').attr('href') &&
               $(this).find('a').attr('href').indexOf('Translate') !== -1;
    });

    var translateHref = '#';
    if ($translateLi.length) {
        translateHref = $translateLi.find('a').attr('href');
        $translateLi.hide(); // Hide from Tools menu
    }

    // Also check ULS trigger (MediaWiki translate extension button)
    var $ulsBtn = $('#p-lang-btn, .uls-trigger, #pt-uls');
    if ($ulsBtn.length) {
        translateHref = $ulsBtn.attr('href') || translateHref;
    }

    // Inject Translate into the sidebar navigation
    var $sidebarNav = $('#p-navigation .vector-menu-content-list');
    if ($sidebarNav.length) {
        $sidebarNav.append(
            '<li id="sidebar-translate-item">' +
            '<a id="sidebar-translate-link" href="' + translateHref + '">' +
            '🌐 Translate this page' +
            '</a>' +
            '</li>'
        );
    }

    /* ===== CLEAN UP TOOLS MENU — REMOVE LESS USEFUL ITEMS ===== */
    // Optional: hide items you don't want in Tools
    var hideFromTools = ['t-permalink', 't-info']; // add IDs to hide
    hideFromTools.forEach(function(id) {
        $('#' + id).hide();
    });

});