Modifica di
Modulo:Protezione
Vai alla navigazione
Vai alla ricerca
Attenzione:
non hai effettuato l'accesso. Se effettuerai delle modifiche il tuo indirizzo IP sarà visibile pubblicamente. Se
accedi
o
crei un'utenza
, le tue modifiche saranno attribuite al tuo nome utente, insieme ad altri benefici.
Controllo anti-spam.
NON
riempirlo!
--[[ * Modulo che implementa il template Protetta. ]]-- require('Modulo:No globals') local getArgs = require('Modulo:Arguments').getArgs local cfg = mw.loadData('Modulo:Protezione/Configurazione') -- Restituisce la protezione della pagina per l'azione richiesta o nil se non protetta. -- -- @param {table} title -- @param {string} action -- @return {string} local function getProtection(title, action) return title.protectionLevels[action] and title.protectionLevels[action][1] end -- Aggiunge l'icona per l'azione e la protezione specificate. -- -- @param {string} action -- @param {string} prot local function addIcon(action, prot) -- l'underscore di move serve per cambiare l'ordine di visualizzazione delle icone local icon = string.format('<indicator name="prot%s">%s</indicator>', action == 'move' and '_move' or action, cfg.icone[action][prot]) mw.getCurrentFrame():preprocess(icon) end -- Restituisce il messaggio configurato per il tipo di azione e protezione sulla pagina specificata. -- -- @param {table} title -- @param {string} action -- @param {string} prot -- @return {string} local function getMsg(title, action, prot) local msg = cfg.messaggi[action][prot][title.namespace] return msg and msg:gsub('$1', string.format('[[%s|pagina di discussione]]', title.talkPageTitle.fullText)) or nil end -- Restituisce la categoria configurata per il tipo di azione e protezione sulla pagina specificata. -- -- @param {table} title -- @param {string} action -- @param {string} prot -- @return {string} local function getCategory(title, action, prot) local categories = cfg.categorie[action] local cat = categories[title.namespace] or categories.default if prot == 'autoconfirmed' then cat = cat .. ' parzialmente' end return string.format('[[Categoria:%s]]', cat) end -- Restituisce la categoria arbitraria scelta dall'utente. -- -- @param {string} editProt -- @param {table} args -- @return {string} local function getUserCategory(editProt, args) local cat if editProt == 'sysop' then cat = args.cat .. ' ' .. (args.generecat == 'm' and 'protetti' or 'protette') elseif editProt == 'autoconfirmed' then cat = args.cat .. ' ' .. (args.generecat == 'm' and 'protetti parzialmente' or 'protette parzialmente') end return cat and string.format('[[Categoria:%s]]', cat) or nil end -- ============================================================================= -- Funzioni esportate -- ============================================================================= local p = {} -- Funzione per l'utilizzo da un altro modulo. function p._main(args) local title, editProt, moveProt, editCat, moveCat, msg, ret title = mw.title.getCurrentTitle() editProt = getProtection(title, 'edit') moveProt = getProtection(title, 'move') -- moveProt=autoconfirmed è già il default in itwiki if moveProt == 'autoconfirmed' then moveProt = nil end -- protezione per la modifica if editProt then addIcon('edit', editProt) msg = getMsg(title, 'edit', editProt) -- il parametro "cat" permette di specificare una categoria arbitraria if args.cat then editCat = getUserCategory(editProt, args) else editCat = getCategory(title, 'edit', editProt) end end -- protezione per lo spostamento if moveProt then addIcon('move', moveProt) -- la categoria per lo spostamento non è aggiunta se editProt=sysop if editProt ~= 'sysop' then moveCat = getCategory(title, 'move', moveProt) end end if editProt or moveProt then ret = (msg or '') .. (editCat or '') .. (moveCat or '') else -- la pagina non è protetta if title.namespace == 10 and title.isSubpage and title.subpageText:match('^[Ss]andbox$') then ret = '[[Categoria:Sandbox dei template]]' else ret = string.format('[[Categoria:%s]]', cfg.catSprotette) end end return ret end -- Funzione per il template {{Protetta}}. function p.main(frame) return p._main(getArgs(frame, { parentOnly = true })) end return p
Oggetto:
Per favore tieni presente che tutti i contributi a Tematiche di genere si considerano pubblicati nei termini d'uso della licenza Creative Commons Attribuzione-Condividi allo stesso modo (vedi
Tematiche di genere:Copyright
per maggiori dettagli). Se non desideri che i tuoi testi possano essere modificati e ridistribuiti da chiunque senza alcuna limitazione, non inviarli qui.
Inviando il testo dichiari inoltre, sotto tua responsabilità, che è stato scritto da te personalmente oppure è stato copiato da una fonte di pubblico dominio o similarmente libera.
Non inviare materiale protetto da copyright senza autorizzazione!
Annulla
Guida
(si apre in una nuova finestra)
Template utilizzato in questa pagina:
Modulo:Protezione/man
(
modifica
)
Menu di navigazione
Strumenti personali
Accesso non effettuato
discussioni
contributi
entra
Namespace
Modulo
Discussione
English
Visite
Leggi
Modifica sorgente
Cronologia
Altro
Navigazione
Pagina principale
Ultime modifiche
Categorie
Principali Categorie
Pagine orfane
Pagine prive di categorie
Semantic Ask
Una pagina a caso
Aiuto su MediaWiki
Modifica Sidebar
Strumenti
Puntano qui
Modifiche correlate
Carica un file
Pagine speciali
Informazioni pagina