Utente:LoStrangolatore/Script/Apri Puntano Qui/Codice
Aspetto
// Apre un elenco di voci copiate dall'elenco dei PuntanoQui. By User:LoStrangolatore. //
| Per approfondire, vedi Utente:LoStrangolatore/Script/Apri Puntano Qui. |
Tool_ApriPuntanoQui = {};
// input: una sequenza di titoli di voci intervallate da scritte "(← collegamenti)", il tutto con un numero imprecisato di spazi in mezzo. // restituisce: un array di pagine. Tool_ApriPuntanoQui.estraiArrayDiPagineDaInput = function(input) {
// Step 1 - Ottengo un array di titoli dall'input
temp = input.split("(← collegamenti)");
// Step 2 - Ripulisco l'array dalle stringhe vuote.
risultato = [];
for(i = 0; i < temp.length; i++)
if (temp[i] != "") risultato[risultato.length] = temp[i];
// Step 3 - restituisco l'array al chiamante.
return risultato;
} Tool_ApriPuntanoQui.urlDiModifica = function(pagina) {
return wgServer + "/w/index.php?title=" + pagina.replace(/ /g, "_") + "&action=edit";
} Tool_ApriPuntanoQui.urlDeiPuntanoQui = function(pagina) {
return wgServer + "/wiki/Speciale:PuntanoQui/" +
pagina.replace(/^ */g, "").replace(/ *$/g, "") // rimuovo gli spazi all'inizio e alla fine, lasciando quelli in mezzo
;
} Tool_ApriPuntanoQui.apriPagina = function(url) {
window.open(url);
}
// input: un array di titoli di pagine. // risultato: apre tutte le pagine in modalità di modifica. Tool_ApriPuntanoQui.apriPagineDiModifica = function(pagine) {
for(i = 0; i < pagine.length; i++)
Tool_ApriPuntanoQui.apriPagina(Tool_ApriPuntanoQui.urlDiModifica(pagine[i]));
}
Tool_ApriPuntanoQui.esegui = function() {
msg = "Passo 1: Apri la pagina dei Puntano Qui.\n" +
"\n" +
"Passo 2: copia tutte le righe dell'elenco.\n" +
"\n" +
"Passo 3: incolla nella casella di testo che segue.";
input = prompt(msg, "");
// A questo punto, input contiene una sequenza di titoli di voci intervallate da scritte "(← collegamenti)", il tutto con un numero imprecisato di spazi in mezzo.
pagine = Tool_ApriPuntanoQui.estraiArrayDiPagineDaInput(input);
Tool_ApriPuntanoQui.apriPagineDiModifica(pagine);
}