MediaWiki:Common.js: differenze tra le versioni
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 1: | Riga 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. */ | ||
console. | console.log('Common.js') | ||
// CODICE PER IL TRANSLATE BUTTON | // CODICE PER IL TRANSLATE BUTTON | ||
mw.loader.using('mediawiki.util', function() { | mw.loader.using('mediawiki.util', function() { | ||
console.log("Common.js | console.log("Common.js loading custom functions"); | ||
function addTranslateButton() { | function addTranslateButton() { |
Versione delle 13:39, 3 lug 2024
/* Any JavaScript here will be loaded for all users on every page load. */ console.log('Common.js') // CODICE PER IL TRANSLATE BUTTON mw.loader.using('mediawiki.util', function() { console.log("Common.js loading custom functions"); 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); });