MediaWiki:Common.js: Difference between revisions

No edit summary
Tag: Manual revert
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. */
/* Force main menu to be pinned on desktop */
 
$(document).ready(function() {
$(document).ready(function() {
     // Force pin the main menu
 
    var pinnedContainer = document.getElementById('vector-main-menu-pinned-container');
     /* Force main menu to be pinned on desktop */
    var unpinnedContainer = document.getElementById('vector-main-menu-unpinned-container');
    var mainMenu = document.getElementById('vector-main-menu');
   
     if (window.innerWidth >= 1024) {
     if (window.innerWidth >= 1024) {
        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 (unpinnedContainer && mainMenu) {
            // Move menu to pinned container if not already there
             if (pinnedContainer && !pinnedContainer.contains(mainMenu)) {
             if (pinnedContainer && !pinnedContainer.contains(mainMenu)) {
                 pinnedContainer.appendChild(mainMenu);
                 pinnedContainer.appendChild(mainMenu);
             }
             }
         }
         }
        // Click the pin button if it exists
 
         var pinButton = document.querySelector('.vector-pinnable-header-pin-button');
         var pinButton = document.querySelector('.vector-pinnable-header-pin-button');
         if (pinButton) {
         if (pinButton) {
Line 20: Line 20:
         }
         }
     }
     }
/* Google Translate Widget */
 
$(document).ready(function() {
    /* Google Translate Widget */
     var translateHtml =  
     var translateHtml =
         '<div class="mw-portlet vector-menu" id="p-translate" style="padding: 8px 5px;">' +
         '<div class="mw-portlet 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"></div>' +
             '</div>' +
             '</div>' +
         '</div>';
         '</div>';
   
 
     // Insert after Main Menu portlet
     // Try multiple selectors to find Main Menu portlet
     var mainMenuPortlet = document.querySelector('#p-Main_Menu, .mw-portlet-Main_Menu, #p-main-menu');
     var mainMenuPortlet = document.querySelector('#p-Main_Menu') ||
                          document.querySelector('.mw-portlet-Main_Menu') ||
                          document.querySelector('[id*="Main_Menu"]') ||
                          document.querySelector('[id*="main-menu"]');
 
     if (mainMenuPortlet) {
     if (mainMenuPortlet) {
         mainMenuPortlet.insertAdjacentHTML('afterend', translateHtml);
         mainMenuPortlet.insertAdjacentHTML('afterend', translateHtml);
     } else {
     } else {
         var portlets = document.querySelectorAll('.mw-portlet');
        // Fallback - append to sidebar
         if (portlets.length > 0) {
         var sidebar = document.querySelector('#mw-panel, .vector-sidebar');
             portlets[portlets.length - 1].insertAdjacentHTML('afterend', translateHtml);
         if (sidebar) {
             sidebar.insertAdjacentHTML('beforeend', 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';
     document.body.appendChild(script);
     document.body.appendChild(script);
});
 
}); /* end document.ready */


function googleTranslateElementInit() {
function googleTranslateElementInit() {