Modifica di
Modulo:Conversione
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 per effettuare la conversione di unità di misura. * * Ampiamente modificato a partire da: * http://fr.wikipedia.org/w/index.php?title=Module:Conversion&oldid=118515752 ]]-- require('Modulo:No globals') local cfg = mw.loadData('Modulo:Conversione/Configurazione') local p = {} -- Ritorna il numero arrotondato al numero di cifre decimali richiesto -- http://lua-users.org/wiki/SimpleRound local function round(num, idp) local mult = 10 ^ (idp or 0) return math.floor(num * mult + 0.5) / mult end local function getUnit(val, targetunitdata, args) local ret, link, space if args.showunit then ret = targetunitdata.symbol elseif args.showunitlong then -- unità per esteso ret = val > 1 and targetunitdata.name2 or targetunitdata.name1 end if args.showunitlink then link = targetunitdata.link end space = (args.showunit and targetunitdata.nospace) and '' or ' ' return space .. (link and '[[' .. link .. '|' .. ret .. ']]' or ret) end -- Ritorna il valore convertito alla unità di misura e alle opzioni specificate function p._main(strval, sourceunit, targetunit, args) local val, sourceunitdata, targetunitdata, cat val = tonumber(strval) -- se non è un numero ritorna la stringa non modificata if not val then return strval end if not args then args = {} end if sourceunit and not targetunit then targetunit = sourceunit end sourceunitdata = cfg.units[sourceunit] or cfg.units[cfg.alias[sourceunit]] targetunitdata = cfg.units[targetunit] or cfg.units[cfg.alias[targetunit]] if sourceunitdata and targetunitdata then if sourceunitdata.type ~= targetunitdata.type then error('unità di misura incompatibili: ' .. sourceunitdata.type .. ' e ' .. targetunitdata.type) end if sourceunitdata == targetunitdata then -- nothing elseif sourceunitdata.type == 'temperature' then val = (val - sourceunitdata.offset) * sourceunitdata.scale val = val / targetunitdata.scale + targetunitdata.offset else val = val * sourceunitdata.scale / targetunitdata.scale end else cat = '[[Categoria:Pagine con unità di misura non supportata]]' end -- arrotondamento if args.rounding then val = round(val, args.rounding) end -- formatnum if args.formatnum then val = mw.language.getContentLanguage():formatNum(val) end -- unità di misura if targetunitdata and (args.showunit or args.showunitlong) then val = val .. getUnit(val, targetunitdata, args) end return val .. (cat or '') end -- Entry-point per {{#invoke:Conversione|main|...}} function p.main(frame) local args = frame.args return p._main(args[1], args[2], args[3], args) 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:Conversione/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