Jump to content

MediaWiki:Common.js: Difference between revisions

From Farmpedia – Agricultural Encyclopedia for Farmers
No edit summary
No edit summary
Tag: Reverted
Line 20: Line 20:
         }
         }
     }
     }
/* Google Translate Widget */
/* Google Translate Widget - after Main Menu, before Contact Us */
$(document).ready(function() {
$(document).ready(function() {
     var translateHtml =  
     var translateHtml =  
         '<div class="mw-portlet vector-menu" id="p-translate" style="padding: 8px 5px;">' +
         '<div class="mw-portlet mw-portlet-translate vector-menu" id="p-translate">' +
             '<div class="vector-menu-heading" style="font-weight:bold; padding: 4px 0; font-size:13px;">Translate</div>' +
             '<div class="vector-menu-heading">Translate</div>' +
             '<div class="vector-menu-content">' +
             '<div class="vector-menu-content">' +
                 '<div id="google_translate_element"></div>' +
                 '<div id="google_translate_element" style="padding: 8px 5px;"></div>' +
             '</div>' +
             '</div>' +
         '</div>';
         '</div>';
      
      
     // Insert after Main Menu portlet
     // Insert after the Main Menu portlet, before Contact Us
     var mainMenuPortlet = document.querySelector('#p-Main_Menu, .mw-portlet-Main_Menu, #p-main-menu');
     var mainMenuPortlet = document.querySelector('#p-Main_Menu, .mw-portlet-Main_Menu');
     if (mainMenuPortlet) {
     if (mainMenuPortlet) {
         mainMenuPortlet.insertAdjacentHTML('afterend', translateHtml);
         mainMenuPortlet.insertAdjacentHTML('afterend', translateHtml);
     } else {
     } else {
        // Fallback - insert before last portlet
         var portlets = document.querySelectorAll('.mw-portlet');
         var portlets = document.querySelectorAll('.mw-portlet');
         if (portlets.length > 0) {
         var lastPortlet = portlets[portlets.length - 1];
            portlets[portlets.length - 1].insertAdjacentHTML('afterend', translateHtml);
        if (lastPortlet) {
            lastPortlet.insertAdjacentHTML('beforebegin', translateHtml);
         }
         }
     }
     }
      
      
    // Load Google Translate script
     var script = document.createElement('script');
     var script = document.createElement('script');
     script.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
     script.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
Line 50: Line 53:
         pageLanguage: 'en',
         pageLanguage: 'en',
         layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
         layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
         autoDisplay: false
         autoDisplay: false,
        multilanguagePage: true
     }, 'google_translate_element');
     }, 'google_translate_element');
}
}

Revision as of 11:16, 11 April 2026

/* Any JavaScript here will be loaded for all users on every page load. */
/* Force main menu to be pinned on desktop */
$(document).ready(function() {
    // Force pin the main menu
    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 (window.innerWidth >= 1024) {
        if (unpinnedContainer && mainMenu) {
            // Move menu to pinned container if not already there
            if (pinnedContainer && !pinnedContainer.contains(mainMenu)) {
                pinnedContainer.appendChild(mainMenu);
            }
        }
        // Click the pin button if it exists
        var pinButton = document.querySelector('.vector-pinnable-header-pin-button');
        if (pinButton) {
            pinButton.click();
        }
    }
/* Google Translate Widget - after Main Menu, before Contact Us */
$(document).ready(function() {
    var translateHtml = 
        '<div class="mw-portlet mw-portlet-translate vector-menu" id="p-translate">' +
            '<div class="vector-menu-heading">Translate</div>' +
            '<div class="vector-menu-content">' +
                '<div id="google_translate_element" style="padding: 8px 5px;"></div>' +
            '</div>' +
        '</div>';
    
    // Insert after the Main Menu portlet, before Contact Us
    var mainMenuPortlet = document.querySelector('#p-Main_Menu, .mw-portlet-Main_Menu');
    if (mainMenuPortlet) {
        mainMenuPortlet.insertAdjacentHTML('afterend', translateHtml);
    } else {
        // Fallback - insert before last portlet
        var portlets = document.querySelectorAll('.mw-portlet');
        var lastPortlet = portlets[portlets.length - 1];
        if (lastPortlet) {
            lastPortlet.insertAdjacentHTML('beforebegin', translateHtml);
        }
    }
    
    // Load Google Translate script
    var script = document.createElement('script');
    script.src = '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
    document.body.appendChild(script);
});

function googleTranslateElementInit() {
    new google.translate.TranslateElement({
        pageLanguage: 'en',
        layout: google.translate.TranslateElement.InlineLayout.SIMPLE,
        autoDisplay: false,
        multilanguagePage: true
    }, 'google_translate_element');
}