MediaWiki:Common.js: differenze tra le versioni
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 9: | Riga 9: | ||
function addTranslateButton() { | function addTranslateButton() { | ||
// Trova l'ul con la classe 'vector-menu-content-list' figlio di 'p-views' | // Trova l'ul con la classe 'vector-menu-content-list' figlio di 'p-views' | ||
var | var pCactions = $('#p-cactions .vector-menu-content-list'); | ||
if ( | if (pCactions.length) { | ||
console.log("p-views list found"); | console.log("p-views list found"); | ||
Riga 37: | Riga 37: | ||
// Aggiungi il nuovo <li> alla lista | // Aggiungi il nuovo <li> alla lista | ||
translateListItem.prependTo( | translateListItem.prependTo(pCactions); | ||
console.log("Translate link added to p-views list"); | console.log("Translate link added to p-views list"); | ||
Versione delle 13:38, 3 lug 2024
/* 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"); function addTranslateButton() { // Trova l'ul con la classe 'vector-menu-content-list' figlio di 'p-views' var pCactions = $('#p-cactions .vector-menu-content-list'); if (pCactions.length) { console.log("p-views list found"); // 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); } }); // Crea l'elemento <li> con le classi specificate var translateListItem = $('<li>', { class: 'vector-tab-noicon mw-list-item' }).append(translateLink); // Aggiungi il nuovo <li> alla lista translateListItem.prependTo(pCactions); console.log("Translate link added to p-views list"); // Pulisce l'intervallo una volta che il bottone è stato aggiunto clearInterval(intervalId); } else { console.log("p-views list not found, retrying..."); } } // Controlla ogni 500ms fino a quando l'elemento non viene trovato var intervalId = setInterval(addTranslateButton, 500); });