Moduł:Information
Z Nonsensopedii, polskiej encyklopedii humoru
Wersja z dnia 15:25, 9 mar 2020 autorstwa Ostrzyciel (dyskusja • edycje)
Moduł generujący tabelkę w szablonie {{Information}}
i ustawiający odpowiednie własności semantyczne. Instrukcję korzystania znajdziesz na stronie Nonsensopedia:Opisywanie grafik.
Zobacz też: Moduł:InformationProvider, który pobiera informacje o plikach.
-- funkcje lokalne
-- funkcja pomocnicza do scalania tabel atrybutów
local function appendSubtable(t, key, value)
t[key] = t[key] or {}
table.insert(t[key], value)
end
-- ustawianie kilku w miarę prostych propów
local function setBasicProps(args)
local props = {}
-- caption
if args['caption'] then
appendSubtable(props, 'Ma podpis pliku', args['caption'])
-- add row
else
appendSubtable(props, 'Nie ma podpisu pliku', true)
end
-- description
if args['description'] then
appendSubtable(props, 'Ma opis', args['description'])
-- add row
else
appendSubtable(props, 'Nie ma opisu', true)
-- add warning
end
-- confirmation
if args['confirmation'] then
appendSubtable(props, 'Ma potwierdzenie licencji', args['confirmation'])
-- add row
end
end
-- funkcje eksportowane
local p = {}
-- zrób cuda
function p.information(frame)
args = {}
for name, value in pairs( frame:getParent().args ) do
if value ~= '' then
local name1 = string.gsub( string.lower( mw.text.trim(name) ), ' ', '_')
args[name1] = value
end
end
for name, value in pairs( frame.args ) do
if value ~= '' then
local name1 = string.gsub( string.lower( mw.text.trim(name) ), ' ', '_')
args[name1] = value
end
end
end
return p