MediaWiki:Gadget-LiveRC 1x.js/InserisciTemplate.js
Questa pagina definisce alcuni parametri di aspetto e comportamento generale di tutte le pagine. Per personalizzarli vedi Aiuto:Stile utente.
Nota: dopo aver salvato è necessario pulire la cache del proprio browser per vedere i cambiamenti (per le pagine globali è comunque necessario attendere qualche minuto). Per Mozilla / Firefox / Safari: fare clic su Ricarica tenendo premuto il tasto delle maiuscole, oppure premere Ctrl-F5 o Ctrl-R (Command-R su Mac); per Chrome: premere Ctrl-Shift-R (Command-Shift-R su un Mac); per Konqueror: premere il pulsante Ricarica o il tasto F5; per Opera può essere necessario svuotare completamente la cache dal menù Strumenti → Preferenze; per Internet Explorer: mantenere premuto il tasto Ctrl mentre si preme il pulsante Aggiorna o premere Ctrl-F5.
//<source lang=javascript>
/*
--------------------------------------------------------------------------------------
---------LLLL---------III--------------------------RRRRRRRRRR--------CCCCC------------
---------LLLL---------III--------------------------RRRRRRRRRRRR----CCCCCCCCC----------
---------LLLL--------------------------------------RRR------RRR---CCC-----CCC---------
---------LLLL---------III--VV-----VV--EEEEEEEEE----RRR------RRR--CCC------------------
---------LLLL---------III---VV---VV---EEE----------RRRRRRRRRRR---CCC------------------
---------LLLL---------III---VV---VV---EEEEEE-------RRRRRRRRRR----CCC------------------
---------LLLL---------III----VV-VV----EEEEEE-------RRR-----RRR----CCC-----CCC---------
---------LLLLLLLLLLL--III----VVVVV----EEE----------RRR------RRR----CCCCCCCCC----------
---------LLLLLLLLLLL--III-----VVV-----EEEEEEEEE----RRR-------RRR-----CCCCC------------
--------------------------------------------------------------------------------------
'''Extension de LiveRC'''
// Permette di inserire i template di avviso in cima alle voci
* Licence : ...?
* Documentation :
* Auteur : [[:it:User:Jalo]] [[:it:User:Rotpunkt]]
*
* This script contains functions (showDialog, dumpTemplate and buildInputEl)
* and formats (all template definitions) modified from:
* http://it.wikipedia.org/w/index.php?title=MediaWiki:Gadget-tb-base.js&oldid=66478020
* http://it.wikipedia.org/w/index.php?title=MediaWiki:Gadget-tb-* (for the templates)
* author Rotpunkt (http://it.wikipedia.org/wiki/Utente:Rotpunkt)
*
* Développement et maintenance :
{{Catégorisation JS|LiveRC}}
*/
if (typeof(lrcHooks)!="undefined") { // DÉBUT IF
///////////////////////// VARIABLES ////////////////////////////////////////////////////////
//// PARAMÈTRES PERSONNALISABLES ////
var templateArguments_A = [
"", "alimentazione", "animazione", "anime e manga", "antropologia", "antroponimi", "araldica", "archeologia", "associazioni", "astronautica", "aviazione", "cinema", "cultura", "danza", "design", "diritto", "ecologia", "economia", "editoria", "energia", "fantascienza", "fantasy", "filatelia", "filosofia",
"fotografia", "fumetti", "geografia", "giochi", "giornalismo", "guerra", "informatica", "istruzione", "lavoro", "LGBT", "linguistica", "marina", "mitologia", "moda", "musica", "natura", "nautica", "numismatica", "onorificenze", "paleontologia", "politica", "pornografia", "professioni", "psicologia",
"scautismo", "scienza", "sessualità", "società", "sociologia", "sport", "storia", "trasporti", "turismo", "urbanistica", "voci comuni"
];
var templateArguments_C = [
"", "alimentazione", "animazione", "anime e manga", "antropologia", "antroponimi", "araldica", "archeologia", "architettura", "arte", "associazioni", "biografie", "cinema", "cronologia", "cultura", "diritto", "ecologia", "editoria", "energia", "enologia", "fantascienza", "filatelia", "filosofia",
"fotografia", "fumetti", "geografia", "giochi", "guerra", "immaginario", "informatica", "lavoro", "leggende", "letteratura", "LGBT", "linguistica", "medicina", "metrologia", "mezzi di trasporto", "mitologia", "moda", "musica", "natura", "neuroscienze", "numismatica", "paleontologia", "patrimoni dell'umanità",
"educazione", "pesca", "politica", "pornografia", "professioni", "psicologia", "religione", "scautismo", "scienza", "sessualità", "società", "sociologia", "sport", "storia", "teatro", "tecnologia", "trasporti", "turismo", "urbanistica", "vessillologia", "voci comuni"
];
var templateArguments_E = [
"", "alimentazione", "animazione", "antropologia", "antroponimi", "araldica", "archeologia", "architettura", "aree naturali protette", "astronomia", "aviazione", "biografie", "biologia", "botanica", "chimica", "cinema", "cucina", "cultura", "danza", "diritto", "ecologia", "economia", "editoria",
"elettronica", "enologia", "fantascienza", "filatelia", "filosofia", "fisica", "fotografia", "fumetti", "geografia", "geologia", "giochi", "giornalismo", "guerra", "informatica", "ingegneria", "istruzione", "letteratura", "LGBT", "lingue", "linguistica", "marina", "meccanica", "medicina", "mineralogia",
"mitologia", "moda", "musei", "musica", "natura", "neopaganesimo", "neuroscienze", "nobiltà", "numismatica", "paranormale", "pesca", "politica", "pornografia", "professioni", "psicologia", "religione", "scautismo", "scienza", "sessualità", "società", "sociologia", "spettacolo", "sport", "storia",
"teatro", "tecnologia", "template", "trasporti", "turismo", "università", "urbanistica", "zoologia"
];
var templateArguments_F = [
"", "araldica", "archeologia", "arte", "cronologia", "cultura", "geografia", "giochi", "musica", "natura", "nobiltà", "onomastica", "patrimoni dell'umanità", "scienza", "società", "sport", "storia", "tecnologia", "trasporti", "voci comuni"
];
var templateArguments_O = [
"", "aviazione", "alimentazione", "animazione", "antropologia", "antroponimi", "araldica", "archeologia", "architettura", "arte", "biografie", "cinema", "cultura", "danza", "diritto", "economia", "editoria", "filatelia", "filosofia", "fumetti", "geografia", "geologia", "giochi", "guerra", "istruzione",
"letteratura", "linguistica", "marina", "medicina", "mitologia", "musica", "natura", "neuroscienze", "numismatica", "paleontologia", "politica", "professioni", "pseudoscienza", "psicologia", "religione", "scautismo", "scienza", "scienze sociali", "scienze umanistiche", "sessualità", "società",
"sport", "storia", "storia di famiglia", "teatro", "tecnologia", "trasporti", "turismo", "urbanistica", "valute", "vessillologia", "voci comuni"
];
var templateArguments_P = [
"", "alimentazione", "animazione", "antropologia", "antroponimi", "archeologia", "architettura", "associazioni", "astronautica", "aziende", "biografie", "botanica", "cinema", "cucina", "cultura", "design", "diritto", "ecologia", "economia", "energia", "fantasy", "filatelia", "filosofia", "fotografia",
"fumetti", "geografia", "giochi", "Internet", "istruzione", "LGBT", "linguistica", "marina", "mezzi di trasporto", "mitologia", "moda", "montagna", "musica", "natura", "numismatica", "pornografia", "professioni", "psicologia", "radio", "religione", "scautismo", "scienza", "sessualità", "società",
"sociologia", "storia", "tecnologia", "televisione", "trasporti", "turismo", "urbanistica", "voci comuni"
];
var templateArguments_S = [
"", "Africa", "agricoltura", "album musicali", "alimentazione", "alpinismo", "alpinisti", "anfibi", "animazione", "anime e manga", "antica Grecia", "antica Roma", "antropologia", "archeologia", "architetti", "architettura",
"aree naturali protette", "arte", "associazioni", "astronomia", "attori", "aviazione", "aziende", "beach volley", "biografie", "biologia", "Bisanzio", "botanica", "calciatori", "calcio", "cantanti", "cattolicesimo", "cestisti",
"chiese", "chimica", "chimica fisica", "ciclismo", "cinema", "città", "collezionismo", "conflitti", "criminalità", "cristianesimo", "cucina", "danza", "design", "diritto", "Disney", "ecologia", "economia", "editoria", "educazione",
"erotismo", "fantascienza", "fantasy", "Ferrari", "ferrovie", "film", "filologia", "filosofia", "fisica", "fiumi", "fumetti", "geografia", "geologia", "geometria", "giochi", "giornalisti", "gruppi musicali", "guerra", "guerre napoleoniche",
"Guerre stellari", "hip hop", "industria", "informatica", "ingegneria", "isole", "istituzioni", "istruzione", "letteratura", "LGBT", "linguistica", "logica", "mammiferi", "marina", "mass media", "matematica", "meccanica", "medicina", "metal", "mineralogia",
"mitologia", "mitologia greca", "mitologia romana", "moda", "montagne", "musica", "musica classica", "musicisti", "numismatica", "numismatici", "nuoto", "pallacanestro", "pallavolo", "paranormale", "patrimoni dell'umanità", "personaggi immaginari", "pesci",
"piante", "piloti automobilistici", "pittura", "Pokémon", "politica", "politici", "pornografia", "psicologia", "punk", "religione", "rettili", "rock", "santi", "scautismo", "sci", "scienza", "scrittori", "scultura", "seconda guerra mondiale", "singoli discografici",
"sociologia", "sostanze chimiche", "sport", "sportivi", "stadi", "Star Trek", "storia", "storia antica", "storia contemporanea", "storia medievale", "storia moderna", "teatro", "tecnologia", "telecomunicazioni", "televisione", "Terra di Mezzo", "trasporti",
"turismo", "uccelli", "urbanistica", "vescovi", "videogiochi", "voci comuni", "wrestling"
];
var templateArguments_T = [
"", "alimentazione", "alpinismo", "animali", "animazione", "antropologia", "antroponimi", "araldica", "archeologia", "architettura", "artropodi", "associazioni", "astrologia", "astronautica", "astronomia", "aviazione", "aziende", "biografie", "biologia", "botanica", "chimica", "cinema", "costume",
"cucina", "cultura", "danza", "design", "diritto", "Disney", "ebraismo", "ecologia", "editoria", "elettronica", "energia", "filatelia", "filosofia", "fisica", "fotografia", "fumetti", "geologia", "giochi", "giornalismo", "grafica", "guerra", "ingegneria", "istruzione", "LGBT", "linguistica", "marina",
"meccanica", "medicina", "meteorologia", "micologia", "mitologia", "moda", "musei", "musica", "natura", "neopaganesimo", "numismatica", "paleontologia", "pesca", "politica", "pornografia", "professioni", "pseudoscienza", "psicologia", "psicometria", "pubblica amministrazione", "religione", "scautismo",
"scienza", "scienze umanistiche", "sessualità", "Sicilia", "società", "sociologia", "Spagna", "spettacolo", "sport", "storia", "teatro", "tecnologia", "televisione", "trasporti", "turismo", "urbanistica", "vessillologia", "voci comuni", "zoologia"
];
var templateArguments_U = [
"", "anime e manga", "antropologia", "antroponimi", "araldica", "archeologia", "associazioni", "astronomia", "aviazione", "aziende", "biografie", "cinema", "controlli automatici", "cronologia", "cucina", "cultura", "danza", "diritto", "ecologia", "editoria", "fantasy", "filatelia", "filosofia",
"fumetti", "giochi", "giornalismo", "istruzione", "lavoro", "letteratura", "LGBT", "lingue", "linguistica", "marina", "mitologia", "moda", "musei", "musica", "natura", "numismatica", "paleontologia", "politica", "pornografia", "radio", "religione", "scautismo", "scienza", "sessualità", "società",
"sociologia", "spettacolo", "sport", "teatro", "tecnologia", "televisione", "template", "trasporti", "turismo", "urbanistica", "voci comuni", "zoologia"
];
var templateArguments_Categorizzare = [
"", "alimentazione", "anime e manga", "antroponimi", "araldica", "archeologia", "architettura", "arte", "associazioni", "astrologia", "aviazione", "aziende", "biografie", "cucina", "diritto", "ecologia", "economia", "editoria", "filatelia", "filosofia", "fotografia", "fumetti", "geografia",
"geologia", "giochi", "guerra", "ingegneria", "istruzione", "letteratura", "LGBT", "linguistica", "marina", "medicina", "mineralogia", "mitologia", "moda", "musica", "numismatica", "politica", "pornografia", "psicologia", "religione", "scautismo", "scienza", "Sicilia", "società", "sport",
"storia", "teatro", "tecnologia", "televisione", "template", "trasporti"
];
var templateArguments_Correggere = [
"", "alimentazione", "animazione", "anime e manga", "antropologia", "araldica", "archeologia", "architettura", "arte", "associazioni", "astronautica", "astronomia", "aviazione", "aziende", "biografie", "biologia", "chimica", "cinema", "criminalità", "cucina", "cultura", "danza", "diritto", "economia",
"editoria", "energia", "fantasy", "filosofia", "fisica", "fotografia", "fumetti", "geografia", "geologia", "giochi", "giornalismo", "guerra", "immaginario", "informatica", "ingegneria", "istruzione", "lavoro", "letteratura", "LGBT", "lingue", "linguistica", "marina", "matematica", "medicina", "meteorologia",
"mitologia", "moda", "musica", "natura", "nobiltà", "numismatica", "politica", "pornografia", "professioni", "pseudoscienza", "psicologia", "pubblicità", "radio", "religione", "scautismo", "scienza", "sessualità", "società", "sociologia", "sport", "storia", "storia di famiglia", "teatro", "tecnologia",
"televisione", "trasporti", "videogiochi", "voci comuni"
];
var templateArguments_InCorso = [
"", "astronautica", "catastrofi", "conflitti", "Europa", "fumetti", "informatica", "musica", "politica", "sport", "Stati Uniti d'America", "televisione", "trasporti"
];
var templateArguments_DaAggiornare = [
"", "animazione", "astrologia", "aziende", "biografie", "cultura", "diritto", "filatelia", "geografia", "guerra", "ingegneria", "istruzione", "linguistica", "marina", "moda", "montagna", "natura", "numismatica", "psicologia", "scautismo", "scienza", "scienze umanistiche", "servizi pubblici", "società",
"spettacolo", "sport", "storia", "tecnologia", "template", "trasporti"
];
var templateArguments_Controlcopy = [
"", "animazione", "anime e manga", "antropologia", "archeologia", "architettura", "aree naturali protette", "associazioni", "astronomia", "aviazione", "aziende", "biografie", "botanica", "chimica", "cinema", "costume", "cucina", "cultura", "design", "diritto", "ecologia", "economia", "editoria",
"enologia", "fantascienza", "fantasy", "filatelia", "filosofia", "fisica", "fotografia", "fumetti", "geografia", "geologia", "giochi", "giornalismo", "guerra", "informatica", "ingegneria", "istruzione", "lavoro", "leggende", "letteratura", "LGBT", "linguistica", "marina", "medicina", "meteorologia",
"mineralogia", "mitologia", "moda", "musica", "natura", "neopaganesimo", "numismatica", "politica", "pornografia", "professioni", "pseudoscienza", "psicologia", "radio", "scautismo", "scienza", "sessualità", "società", "sociologia", "spettacolo", "sport", "storia", "teatro", "tecnologia",
"televisione", "trasporti", "turismo", "voci comuni", "zoologia"
];
var templateArguments_Cancellazione = [
"", "agricoltura", "alimentazione", "animazione", "anime e manga", "antroponimi", "araldica", "archeologia", "architettura", "associazioni", "aziende", "biografie", "cinema", "comunicazione", "criminalità", "cronologia", "cultura", "danza", "design", "diritto", "ecologia", "editoria", "enti pubblici",
"esoterismo", "fantascienza", "fantasy", "filatelia", "filosofia", "fisica", "fotografia", "fumetti", "geografia", "giornalismo", "guerra", "immaginario", "istruzione", "letteratura", "LGBT", "linguistica", "marina", "mitologia", "moda", "musica", "nautica", "nobiltà", "numismatica", "politica", "pornografia",
"professioni", "psicologia", "radio", "scautismo", "scienza", "sessualità", "società", "sociologia", "software libero", "solidarietà", "spettacolo", "storia", "teatro", "tecnologia", "televisione", "template", "trasporti", "turismo", "università", "urbanistica", "voci comuni"
];
var templateArguments_CancellaSubito = [
"", "1. pagine vuote, di prova", "2. solo frasi offensive", "3. solo lingua straniera", "4. promozionali o CV", "5. pagine doppie", "6. categorie vuote", "7. pagine già cancellate", "8. pagine create per l'inversione", "9. redirect errati", "10. talk e sottopag. di pagine già canc.", "11. immagini doppie ed orfane",
"12. immagini in evidente copyviol", "13. pagine copiate senza licenza libera", "14. immagini da verificare da tanto", "15. pagine \"Utente:\" di nessuno", "16. pagine già trasferite" , "17. sottopag. \"Utente:\" richieste da lui"
];
/* Template list:
*
* 'template': name of the template to be inserted
* 'string': option label in the template combo box
* 'where': where to insert the template in the page (top or bottom)
* 'noinclude': whether the template shall be tagged with "noinclude"
* 'subst': whether the template shall be "substed"
* 'parameters': list of the parameters of the template
* 'name': parameter name shown in the popup dialog
* 'type': type of the argument. Accepted values are: string, checkbox, select
* 'value':
* type==string Not required
* type==checkbox The boolean initial state (true or false)
* type==select The list of combo box options
* 'format': The format of the written template
*/
lstMyTemplate = {
'A': { template:'A',
string:'Aiutare',
where:'top',
noinclude: false,
subst: false,
parameters: {
motivo: {name: 'Motivo', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_A},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_A}
},
'format': function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 + '|motivo=' + params.motivo +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'C': { template:'C',
string:'Controllare',
where:'top',
noinclude: false,
subst: false,
parameters: {
motivo: {name: 'Motivo', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_C}
},
format: function (params) {
return '|argomento=' + params.argomento + '|motivo=' + params.motivo +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'E': { template:'E',
string:'Enciclopedicità',
where:'top',
noinclude: false,
subst: false,
parameters: {
motivo: {name: 'Motivo', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_E},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_E}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 + '|motivo=' + params.motivo +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'F': { template:'F',
string:'Senza fonti',
where:'top',
noinclude: false,
subst: false,
parameters: {
commento: {name: 'Commento', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_F}
},
format: function (params) {
return '|argomento=' + params.argomento + '|commento=' + params.commento +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'O': { template:'O',
string:'Orfana',
where:'top',
noinclude: false,
subst: false,
parameters: {
argomento: {name: 'Argomento', type: 'select', value: templateArguments_O},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_O}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'P': { template:'P',
string:'POV',
where:'top',
noinclude: false,
subst: false,
parameters: {
motivo: {name: 'Motivo', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_P},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_P}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 + '|motivo=' + params.motivo +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'S': { template:'S',
string:'Stub',
where:'top',
noinclude: false,
subst: false,
parameters: {
argomento: {name: 'Argomento', type: 'select', value: templateArguments_S},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_S}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2;
}
},
'T': { template:'T',
string:'Tradurre',
where:'top',
noinclude: false,
subst: false,
parameters: {
lingua: {name: 'Lingua', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_T}
},
format: function (params) {
return '|argomento=' + params.argomento + '|lingua=' + params.lingua +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'U': { template:'U',
string:'Unire',
where:'top',
noinclude: false,
subst: false,
parameters: {
pagina: {name: 'Pagina', type: 'string'},
verso: {name: 'Verso', type: 'select', value: ["a", "da"]},
discussione: {name: 'Discussione', type: 'string'},
argomento: {name: 'Argomento', type: 'select', value: templateArguments_U},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_U},
sezione: {name: 'Sezione', type: 'string'},
commento: {name: 'Commento', type: 'string'}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 + '|pagina=' + params.pagina +
'|verso=' + params.verso + '|discussione=' + params.discussione + '|sezione=' + params.sezione +
'|commento=' + params.commento + '|data={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'Categorizzare': { template:'Categorizzare',
string:'Categorizzare',
where:'bottom',
noinclude: false,
subst: false,
parameters: {
argomento: {name: 'Argomento', type: 'select', value: templateArguments_Categorizzare},
commento: {name: 'Commento', type: 'string'}
},
format: function (params) {
return '|argomento=' + params.argomento + '|commento=' + params.commento;
}
},
'Spostare': { template:'Spostare',
string:'Spostare',
where:'top',
noinclude: false,
subst: false,
parameters: {
voce: {name: 'Nome voce', type: 'string'},
motivo: {name: 'Motivo', type: 'string'}
},
format: function (params) {
return '|1=' + params.voce + '|motivo=' + params.motivo;
}
},
'Correggere': { template:'Correggere',
string:'Correggere',
where:'top',
noinclude: false,
subst: false,
parameters: {
argomento: {name: 'Argomento', type: 'select', value: templateArguments_Correggere},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_Correggere},
commento: {name: 'Commento', type: 'string'}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 + '|commento=' + params.commento +
'|mese={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'In corso': { template:'In corso',
string:'In corso',
where:'top',
noinclude: false,
subst: false,
parameters: {
argomento: {name: 'Argomento', type: 'select', value: templateArguments_InCorso}
},
format: function (params) {
return '|1=' + params.argomento;
}
},
'Da aggiornare': { template:'Da aggiornare',
string:'Da aggiornare',
where:'top',
noinclude: false,
subst: false,
parameters: {
argomento: {name: 'Argomento', type: 'select', value: templateArguments_DaAggiornare},
argomento2: {name: 'Argomento2', type: 'select', value: templateArguments_DaAggiornare},
commento: {name: 'Commento', type: 'string'}
},
format: function (params) {
return '|argomento=' + params.argomento + '|argomento2=' + params.argomento2 + '|anno=' + '{{subst:CURRENTMONTHNAME}}' +
'|mese=' + '{{subst:CURRENTYEAR}}';
}
},
'Cancelcopy': { template:'Cancelcopy',
string:'Cancelcopy',
where:'top',
noinclude: true,
subst: false,
parameters: {
fonte: {name: 'Fonte', type: 'string'}
},
format: function (params) {
return '|fonte=' + params.fonte;
}
},
'Controlcopy': { template:'Controlcopy',
string:'Controlcopy',
where:'top',
noinclude: true,
subst: false,
parameters: {
argomento: {name: 'argomento', type: 'select', value: templateArguments_Controlcopy},
motivo: {name: 'motivo', type: 'string'}
},
format: function (params) {
return '|argomento=' + params.argomento + '|motivo=' + params.motivo +
'|data={{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}';
}
},
'ViolazioneCopyright': { template:'ViolazioneCopyright',
string:'ViolazioneCopyright',
where:'top',
noinclude: true,
subst: false,
parameters: {
url: {name: 'url', type: 'string'}
},
format: function (params) {
return '|url=' + params.url;
}
},
'Cancellazione': { template:'Cancellazione',
string:'Cancellazione',
where:'top',
noinclude: true,
subst: false,
parameters: {
arg: {name: 'arg', type: 'select', value: templateArguments_Cancellazione},
arg2: {name: 'arg2', type: 'select', value: templateArguments_Cancellazione}
},
format: function (params) {
return '|arg=' + params.arg + '|arg2=' + params.arg2;
}
},
'Cancella subito': { template:'Cancella subito',
string:'Cancella subito',
where:'top',
noinclude: true,
subst: false,
parameters: {
motivo: {name: 'motivo', type: 'select', value: templateArguments_CancellaSubito},
altroMotivo: {name: 'Altro motivo', type: 'string'}
},
format: function (params) {
return '|motivo=' + params.motivo + params.altroMotivo;
}
},
'Protetta': { template:'Protetta',
string:'Protetta',
where:'top',
noinclude: true,
subst: false
},
'Trasferimento': { template:'Trasferimento',
string:'Trasferimento',
where:'top',
noinclude: false,
subst: false,
parameters: {
codiceProgetto: {name: 'codiceProgetto', type: 'string'}
},
format: function (params) {
return '|1=' + params.codiceProgetto;
}
},
'Nota disambigua': { template:'Nota disambigua',
string:'Nota disambigua',
where:'top',
noinclude: false,
subst: false,
parameters: {
descrizione: {name: 'descrizione', type: 'string' },
titolo: {name: 'titolo', type: 'string' },
redirect: {name: 'redirect', type: 'string' }
},
format: function (params) {
return '|descrizione=' + params.descrizione + '|titolo=' + params.titolo + '|redirect=' + params.redirect;
}
}
};
function lrcRunInsertTemplate(data){
TagBar = document.getElementById("LiveTagForm");
var TagInput = document.getElementById('LiveTagLink');
TagInput.onclick = function(){ myGetLiveTag(data.page); return false; };
TagInput.onselect = function(){ myGetLiveTag(data.page); return false; };
var TagSelect = document.getElementById('LiveTagReason');
// empty the options list
TagSelect.options.length = 0;
jQuery.each(lstMyTemplate, function(i, val) {
var optTag = document.createElement('option');
optTag.value = i;
optTag.innerHTML = val.string;
TagSelect.appendChild(optTag);
});
// setup dialog
mw.loader.using(['jquery.ui.dialog'], function () {
$('<div>')
.attr('id', 'gtb-dialog')
.appendTo('body');
});
}
////////////////////////////////////////// HOOKS
LiveRC_AddHook("AfterPreviewArticle", lrcRunInsertTemplate);
// Récupération des information et requête de page
function myGetLiveTag(page){
lrcDisplayDebug("Automatic function (Tag)");
var TagSelect = document.getElementById("LiveTagReason");
var TagButton = document.getElementById("LiveTagLink");
if(!TagSelect || !TagButton) return;
var message = lstMyTemplate[TagSelect.value];
lrcDisableLink("LiveTagReason");
lrcDisableLink("LiveTagLink");
wpajax.http({ url: wgServer + wgScriptPath + '/api.php?format=xml'
+ '&action=query&prop=info&intoken=edit'
+ '&inprop=protection'
+ '&titles=' + encodeURIComponent(page),
onSuccess: myPostTagPage,
page: page,
message: message});
return false;
}
// Traitement ajout de bandeau
function myPostTagPage(xmlreq, data){
var page = data.page;
var message = data.message;
ObjetXML = xmlreq.responseXML;
var Isprotected = false;
var PR = ObjetXML.getElementsByTagName("pr");
for(var a=0,l=PR.length;a<l;a++){
var Type = PR[a].getAttribute("type");
var Level = PR[a].getAttribute("level");
if(Type=="edit" && wgUserGroups.indexOf(Level)==-1) Isprotected = true;
}
if(Isprotected){
LiveRC_alert("<b>"+lrcMakeText("PROTECTEDPAGE").split("$1").join(page)+"</b>");
return;
}
// show dialog
var tpl = showDialog(message, page);
var Page = ObjetXML.getElementsByTagName("page")[0];
edittoken = Page.getAttribute("edittoken");
}
function myPostTagPageDone(Req, data){
var params = data.params;
var where = data.where;
var text = "<b>" +params["title"]+ " : " + lrcMakeText("TAG_DONE") + "</b> <small>("+params[(where=='bottom')?"appendtext":"prependtext"]+")</small>";
LiveRC_alert(text);
}
/**
* Show the dialog in order to ask for the template parameters.
*/
function showDialog(data, page) {
var $dialog, $fieldset;
// create the dialog html
$dialog = $('#gtb-dialog').html('Inserisce il template {{');
$('<a>')
.attr('href', '/wiki/Template:' + data.template)
.attr('target', '_blank')
.attr('tabindex', '-1')
.css('color', '#2e45ad')
.text(data.template)
.appendTo($dialog);
$dialog.append('}} nella pagina.');
$fieldset = $('<fieldset>').css('border-color', 'gray').appendTo($dialog);
$('<legend>').text('Parametri').appendTo($fieldset);
$.each(data.parameters, function (id, val) {
var inputEl = buildInputEl(id, val);
$('<label>')
.attr('for', id)
.text(inputEl.label + ':')
.appendTo($fieldset);
$fieldset
.append('<br/>')
.append(inputEl.el)
.append('<br/>');
});
// show the dialog
$dialog.dialog({
title: '<img src="https://upload.wikimedia.org/wikipedia/commons/b/b6/LiveRC-cropt.svg" width="42"/> ' + data.string,
width: 500,
resizable: false,
modal: true,
zIndex: 10000,
buttons: {
'Inserisci': function () {
var params = {};
$dialog.find('input:text,select').each(function () {
params[$(this).attr('id')] = $.trim($(this).val());
});
$dialog.find('input:checkbox').each(function () {
params[$(this).attr('id')] = $(this).prop('checked');
});
text = dumpTemplate(data, params);
$(this).dialog('close');
postTemplate(data, text, page);
},
'Annulla': function () {
$(this).dialog('close');
}
}
});
}
function dumpTemplate(template, params) {
var text, templateParams;
if (template.format) {
templateParams = template.format(params || {});
}
text = (template.noinclude ? '<noinclude>' : '') +
'{{' + (template.subst ? 'subst:' : '') +
template.template + (templateParams || '') + '}}' +
(template.noinclude ? '</noinclude>' : '') + '\n';
return text;
}
var edittoken = "";
function postTemplate (data, text, page)
{
var EditParam = new Array();
EditParam["token"] = edittoken;
if (data.where == 'top')
EditParam["prependtext"] = text+"\n";
else if (data.where == 'bottom')
EditParam["appendtext"] = "\n"+text;
else //default = top
EditParam["prependtext"] = text+"\n";
EditParam["summary"] = lrcMakeText("RESUMESTART") + lrcMakeText("TAG_RESUME") + ' ' + data.template;
EditParam["title"] = page;
EditParam["watchlist"] = "preferences";
EditParam["notminor"] = "1";
EditParam["nocreate"] = "1";
if(lrcMakeParam("BypassWatchdefault")) EditParam["watchlist"] = "nochange";
var Params = new Array();
for(var Param in EditParam){
Params.push(Param+"="+encodeURIComponent(EditParam[Param]));
}
Params = Params.join("&");
var headers = new Array();
headers['Content-Type'] = 'application/x-www-form-urlencoded';
wpajax.http({ url: wgServer + wgScriptPath + '/api.php?action=edit',
method: "POST", headers: headers,
data: Params,
onSuccess: myPostTagPageDone,
params:EditParam,
where: data.where
});
}
function buildInputEl(id, data) {
var label, inputEl;
if (data.type == 'string') {
label = data.name;
inputEl = $('<input/>')
.attr('id', id)
.attr('type', 'text')
.attr('size', 50);
} else if (data.type == 'checkbox') {
label = data.name;
inputEl = $('<input/>')
.attr('id', id)
.attr('type', 'checkbox')
.attr('checked', data.value);
} else if (data.type == 'select') {
label = data.name;
inputEl = $('<select>')
.attr('id', id)
.css('width', '200px');
$.each(data.value, function (i, option) {
$('<option>')
.html(option)
.appendTo(inputEl);
});
}
return { label: label, el: inputEl };
}
/* ************************************************************************************************************************************************ */
} // FIN IF
//</source>