MediaWiki:Gadget-LiveRC 1x.js/InserisciTemplate.js

Versione del 23 giu 2014 alle 12:02 di Jalo (discussione | contributi) (Rollback da popup. Ripristinata la versione di Jalo)

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.

/* 
 --------------------------------------------------------------------------------------
 ---------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]]
* 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"
];

/* 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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=June 2014';
    }
  },
  '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=' + 'June' +
               '|mese=' + '2014';
    }
  },
  '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=June 2014';
    }
  },
  '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: 'string'}
        },
    format: function (params) {
        return '|motivo=' + params.motivo;
    }
  },
  '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.
*
* Modified from:
* http://it.wikipedia.org/w/index.php?title=MediaWiki:Gadget-tb-base.js&oldid=66478020
* Author: Rotpunkt (http://it.wikipedia.org/wiki/Utente:Rotpunkt)
*/
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"/>&nbsp;' + 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