Modulo:Lingue: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
aggiunto funzione per template lingue |
||
Riga 20:
end
-- ritorna vero se "code"
function language.esiste(code)
if code == nil or code=='' then return false end
Riga 29:
-- ritorna il nome standard della lingua corrispondente a "code". Se "code" non corrisponde a nessuna
-- lingua inserita in tabella ritorna il valore di default o stringa nulla se questo non è
-- indicato. Se maiuscolo è vero il nome viene ritornato -- con la prima lettera maiuscola
function language.
local nome = default or ''
if code ~= nil and code ~= '' then
Line 57 ⟶ 58:
function language.nome(frame)
local maiuscolo = false
local code = frame.args[1] or ''
local default = (frame.args[2] == 'v' and '') or code
if frame.args['M']~=nil and frame.args['M']~='' then
maiuscolo = true
end
return language.
end
Line 75 ⟶ 78:
end
local voce = language.get_voce(code)
local nome = language.
if nome == "" and voce ~="" then
if maiuscolo then
Line 89 ⟶ 92:
end
end
--funzione di interfaccia per template:Lingue
function language.lingue(frame)
local lingue_list = { }
-- Se chiamata mediante #invoke, usa gli argomenti passati al template invocante.
-- Altrimenti a scopo di test assume che gli argomenti siano passati direttamente
local args
if frame == mw.getCurrentFrame() then
args = frame:getParent().args
else
args = { frame }
end
for _,code in ipairs(args) do
lingua = language.get_nome(code)
if lingua ~= "" then
lingue_list[#lingue_list+1] = '<abbr title="' .. lingua .. '">' .. mw.ustring.upper(code) .. "</abbr>"
else
lingue_list[#lingue_list+1] = code
end
end
if #lingue_list > 0 then
return '(<span style="font-weight:bolder; font-size:80%">' .. table.concat(lingue_list, ", ") .. "</span>)"
end
return ''
end
-- Restitusce una tabella con tutti i codici riconosciuti dal modulo
Line 98 ⟶ 127:
local codici_sorted = {}
for code, _ in pairs(lg.codici) do
alias_table[code] = {"'''" .. code .. "'''"}
codici_sorted[#codici_sorted+1] = code
end
Line 114 ⟶ 143:
.done()
.tag('th')
.wikitext('
.done()
.tag('th')
.wikitext('
.done()
.tag('th')
.wikitext('[[template:Lingue]]')
for _,code in ipairs(codici_sorted) do
local code_string = table.concat(alias_table[code], ", ")
local nome, voce =
if voce ~= '' then voce = '[[' .. voce .. ']]' end
root
Line 134 ⟶ 165:
.tag('td')
.wikitext(voce)
.done()
.tag('td')
.css('text-align', 'center')
.wikitext(language.lingue(code))
end
return tostring(root)
|