MediaWiki:Common.js

Da Wikiliscio.

Nota: dopo aver pubblicato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.

  • Firefox / Safari: tieni premuto il tasto delle maiuscole Shift e fai clic su Ricarica, oppure premi Ctrl-F5 o Ctrl-R (⌘-R su Mac)
  • Google Chrome: premi Ctrl-Shift-R (⌘-Shift-R su un Mac)
  • Internet Explorer / Edge: tieni premuto il tasto Ctrl e fai clic su Aggiorna, oppure premi Ctrl-F5
  • Opera: premi Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */

console.error('TEST EX')

// CODICE PER IL TRANSLATE BUTTON
mw.loader.using('mediawiki.util', function() {
    console.log("Common.js is loaded");

    $(document).ready(function() {
        console.log("DOM fully loaded and parsed");

        // Ottieni la lingua del browser
        var userLang = navigator.language || navigator.userLanguage;
        var targetLanguage = userLang.split('-')[0]; // Prendi solo la parte principale della lingua (es. "it" da "it-IT")

        // Crea il collegamento per la traduzione
        var translateLink = $('<a>', {
            href: '#',
            text: 'Traduci Pagina',
            id: 'translate-page-link',
            click: function(event) {
                event.preventDefault();
                var currentUrl = window.location.href;
                var translateUrl = "https://translate.google.com/translate?hl=&sl=auto&tl=" + targetLanguage + "&u=" + encodeURIComponent(currentUrl);
                window.open(translateUrl, '_blank');
                console.log("Link clicked, translating to: " + targetLanguage);
            }
        });

        // Trova la barra degli strumenti superiore e aggiungi il nuovo collegamento
        var pViews = $('#p-views ul');
        if (pViews.length) {
            var firstListItem = pViews.children().first();
            $('<li>').append(translateLink).insertBefore(firstListItem);
            console.log("Translate link added to p-views before first item");
        } else {
            console.log("p-views not found");
        }
    });
});