MediaWiki:Common.js: Difference between revisions

No edit summary
No edit summary
Line 1: Line 1:
/* Any JavaScript here will be loaded for all users on every page load. */
mw.hook('wikipage.content').add(function () {
mw.hook('wikipage.content').add(function () {
   console.log("[Language Menu] Script started");
   console.log("[Language Menu] Script started");
Line 23: Line 22:
   if (!currentLang) currentLang = 'en';
   if (!currentLang) currentLang = 'en';


  // 🔧 Força mapeamento da página principal para "Main_Page"
   // Labels e links
  if (base === 'Main_Page' || base === 'Página_principal') {
    base = 'Main_Page';
  }
 
   // Labels
   var labels = {
   var labels = {
     'pt': 'Português',
     'pt': 'Português',
Line 35: Line 29:
   };
   };


   // Links finais
   var links = {};
   var links = {
  if (base === 'Main_Page' || base === 'Página_principal') {
    'pt': base + '/pt',
    links = {
    'en': base,
      'pt': 'Página_principal/pt',
    'es': base + '/es'
      'en': 'Main_Page',    // inglês é base
   };
      'es': 'Main_Page/es'
    };
   } else {
    links = {
      'pt': base + '/pt',
      'en': base,           // inglês é sem sufixo
      'es': base + '/es'
    };
   }


   // Monta menu de idiomas
   // Monta menu de idiomas
Line 47: Line 49:
     if (!el) return;
     if (!el) return;


    var href = '/doc/' + links[lang]; // Gera URL corretamente
     if (lang === currentLang) {
     if (lang === currentLang) {
       el.textContent = labels[lang];
       el.textContent = labels[lang];
     } else {
     } else {
       el.innerHTML = '<a class="lang-menu-link" href="' + href + '">' + labels[lang] + '</a>';
       el.innerHTML = '<a class="lang-menu-link" href="' + mw.util.getUrl(links[lang]) + '">' + labels[lang] + '</a>';
     }
     }
   }
   }
Line 59: Line 60:
   insertContent("link-es", "es");
   insertContent("link-es", "es");


   // 🌀 Reescreve links do conteúdo para o idioma atual
   // 🌀 Reescreve links do conteúdo
   console.log("[Language Menu] Rewriting content links for:", currentLang);
   console.log("[Language Menu] Rewriting content links for:", currentLang);