MediaWiki:Common.js: differenze tra le versioni
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 41: | Riga 41: | ||
// Pulisce l'intervallo una volta che il bottone è stato aggiunto | // Pulisce l'intervallo una volta che il bottone è stato aggiunto | ||
clearInterval( | clearInterval(translateButtonIntervalId); | ||
} else { | } else { | ||
console.log("p-views list not found, retrying..."); | console.log("p-views list not found, retrying..."); | ||
Riga 48: | Riga 48: | ||
// Controlla ogni 500ms fino a quando l'elemento non viene trovato | // Controlla ogni 500ms fino a quando l'elemento non viene trovato | ||
var | var translateButtonIntervalId = setInterval(addTranslateButton, 500); | ||
// CODICE PER IL BOTTONE INSTAGRAM | // CODICE PER IL BOTTONE INSTAGRAM | ||
function addInstagramButton() { | |||
// Trova l'ul con id 'footer-icons' e l'elemento 'footer-poweredbyico' | |||
var footerIconsList = $('#footer-icons'); | |||
var poweredByItem = $('#footer-poweredbyico'); | |||
if (footerIconsList.length && poweredByItem.length) { | |||
console.log("footer-icons list and poweredby item found"); | |||
// Crea il collegamento per Instagram con l'icona | |||
var instagramLink = $('<a>', { | |||
href: 'https://www.instagram.com/visagemusic/', | |||
target: '_blank', // Apri il link in una nuova scheda | |||
title: 'Seguici su Instagram' | |||
}).append($('<img>', { | |||
src: 'https://upload.wikimedia.org/wikipedia/commons/a/a5/Instagram_icon.png', // URL dell'icona di Instagram | |||
alt: 'Instagram', | |||
style: 'width: 24px; height: 24px;' // Stili per dimensionare l'icona | |||
})); | |||
// Crea l'elemento <li> per l'icona di Instagram | |||
var instagramListItem = $('<li>', { | |||
class: 'footer-icon-item' | |||
}).append(instagramLink); | |||
// Inserisci l'elemento <li> di Instagram prima dell'elemento 'footer-poweredbyico' | |||
instagramListItem.insertBefore(poweredByItem); | |||
console.log("Instagram link added to footer-icons list"); | |||
// Pulisce l'intervallo una volta che il bottone è stato aggiunto | |||
clearInterval(instagramButtonIntervalId); | |||
} else { | |||
console.log("footer-icons list or poweredby item not found, retrying..."); | |||
} | |||
} | |||
// Controlla ogni 500ms fino a quando l'elemento non viene trovato | |||
var instagramButtonIntervalId = setInterval(addInstagramButton, 500); | |||
}); | }); |
Versione delle 13:50, 3 lug 2024
/* Any JavaScript here will be loaded for all users on every page load. */ console.log('Common.js') mw.loader.using('mediawiki.util', function() { console.log("Common.js loading custom functions"); // CODICE PER IL TRANSLATE BUTTON 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(translateButtonIntervalId); } else { console.log("p-views list not found, retrying..."); } } // Controlla ogni 500ms fino a quando l'elemento non viene trovato var translateButtonIntervalId = setInterval(addTranslateButton, 500); // CODICE PER IL BOTTONE INSTAGRAM function addInstagramButton() { // Trova l'ul con id 'footer-icons' e l'elemento 'footer-poweredbyico' var footerIconsList = $('#footer-icons'); var poweredByItem = $('#footer-poweredbyico'); if (footerIconsList.length && poweredByItem.length) { console.log("footer-icons list and poweredby item found"); // Crea il collegamento per Instagram con l'icona var instagramLink = $('<a>', { href: 'https://www.instagram.com/visagemusic/', target: '_blank', // Apri il link in una nuova scheda title: 'Seguici su Instagram' }).append($('<img>', { src: 'https://upload.wikimedia.org/wikipedia/commons/a/a5/Instagram_icon.png', // URL dell'icona di Instagram alt: 'Instagram', style: 'width: 24px; height: 24px;' // Stili per dimensionare l'icona })); // Crea l'elemento <li> per l'icona di Instagram var instagramListItem = $('<li>', { class: 'footer-icon-item' }).append(instagramLink); // Inserisci l'elemento <li> di Instagram prima dell'elemento 'footer-poweredbyico' instagramListItem.insertBefore(poweredByItem); console.log("Instagram link added to footer-icons list"); // Pulisce l'intervallo una volta che il bottone è stato aggiunto clearInterval(instagramButtonIntervalId); } else { console.log("footer-icons list or poweredby item not found, retrying..."); } } // Controlla ogni 500ms fino a quando l'elemento non viene trovato var instagramButtonIntervalId = setInterval(addInstagramButton, 500); });