Utente:GryffindorD/common.js: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Ripristinata versione 143235961 di GryffindorD delle 20:45 del 22 gen 2025) (RipristinoRapido Etichetta: Ripristino manuale |
m test Etichetta: Annullato |
||
Riga 31:
window.popupPreviews = false;
window.popupImages = false;
mw.loader.using(['mediawiki.api', 'mediawiki.util'], function () {
var api = new mw.Api();
function correggiRedirect() {
var links = document.querySelectorAll('#mw-content-text a');
links.forEach(function (link) {
var href = link.getAttribute('href');
if (href && href.startsWith('/wiki/')) {
var titolo = decodeURIComponent(href.split('/wiki/')[1].replace(/_/g, ' '));
api.get({
action: 'query',
titles: titolo,
redirects: true
}).done(function (data) {
var pages = data.query.pages;
for (var pageId in pages) {
var page = pages[pageId];
if (page.redirects && page.redirects[0].to !== titolo) {
link.style.backgroundColor = 'yellow'; // Evidenzia il link
link.title = 'Questo link punta a un redirect: ' + page.redirects[0].to;
// Aggiungi un'opzione per correggere il redirect
var correggiButton = document.createElement('button');
correggiButton.textContent = 'Correggi';
correggiButton.style.marginLeft = '5px';
correggiButton.addEventListener('click', function () {
var nuovoTitolo = page.redirects[0].to.replace(/ /g, '_');
link.href = '/wiki/' + nuovoTitolo;
link.textContent = page.redirects[0].to;
link.style.backgroundColor = ''; // Rimuovi evidenziazione
this.remove(); // Rimuovi il pulsante
});
link.parentNode.insertBefore(correggiButton, link.nextSibling);
}
}
});
}
});
}
// Aggiungi un pulsante per eseguire lo script
mw.util.addPortletLink(
'p-cactions',
'#',
'Correggi Redirect',
'ca-correggi-redirect',
'Trova e correggi i wikilink che puntano a redirect'
);
document.getElementById('ca-correggi-redirect').addEventListener('click', function (e) {
e.preventDefault();
correggiRedirect();
});
});
|