Модул:Корисник:Ђидо/Инфокутија
Изглед
Овај модул имплементира шаблон Корисник:Ђидо/Инфокутија
local modul = {};
local funkcije = require('Модул:Корисник:Ђидо/Инфокутија/функције')
local parametriVarijante = {
nadnaslov = { "наднаслов", "префикс", "prefix" },
naslov = { "наслов", "naslov", "име", "title" },
podnaslov = { "поднаслов", "суфикс", "suffix", "subtitle" },
slika = { "слика", "picture" },
opis = { "опис", "опис слике", "picture description", "picture desc", "desc", "description" },
kategorizacija = { "категоризација", "кат", "categorization", "cat" },
}
modul.infokutija = function(frame)
local tekst = {}
local parametri = funkcije.parseParams(frame:getParent().args, parametriVarijante)
local p = parametri[1]
local nepoznatiParametri = parametri[2]
local redniParametri = parametri[3]
-- Непознати параметри
if mw.getCurrentFrame():preprocess('{{REVISIONID}}') == '' then
for k, v in pairs(nepoznatiParametri) do
table.insert(tekst, '<div class="hatnote" style="color:red"><strong>Упозорење:</strong> '
.. 'Страница користи шаблон Инфокутија са непознатим параметром „<strong>' .. k .. '</strong>”.</div>')
end
end
table.insert(tekst, '<div style="float: right; width: 300px; border: 1px solid #999999;">')
table.insert(tekst, '<div style="padding: 6px;">')
table.insert(tekst, '<div class="infokutija_pozadina" style="text-align:center;">')
if p.nadnaslov then
table.insert(tekst, p.nadnaslov .. '<br/>')
end
table.insert(tekst, '<span style="font-size:120%; font-weight:bold;">'
.. (p.naslov or mw.title.getCurrentTitle().text)
.. '</span>')
if p.podnaslov then
table.insert(tekst, '<br/>' .. p.podnaslov)
end
table.insert(tekst, "</div>")
table.insert(tekst, "</div>")
if p.slika then
table.insert(tekst, '<div style="padding-bottom: 6px; text-align:center;">')
table.insert(tekst, '[[Датотека:' .. p.slika .. '|200px]]')
if p.opis then
table.insert(tekst, '<div style="font-size:90%;">' .. p.opis .. '</div>')
end
table.insert(tekst, "</div>")
end
for i, v in ipairs(redniParametri) do
table.insert(tekst, '<div style="padding-left: 6px; padding-bottom: 6px; padding-right: 6px;">' .. v .. '</div>')
end
table.insert(tekst, "</div>")
-- Категорије за праћење
if funkcije.parseBoolean(p.kategorizacija, mw.title.getCurrentTitle().namespace == 0) then
-- Сви чланци
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија]]')
-- Наслов
if p.naslov then
if p.naslov == mw.title.getCurrentTitle().text then
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија/наслов/исти као назив чланка]]')
else
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија/наслов/различит од назива чланка]]')
end
else
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија/наслов/недостаје]]')
end
-- Слика
if not p.slika then
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија/слика/недостаје]]')
else
if not p.opis then
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија/опис/недостаје]]')
end
end
-- Непознати параметри
for k, v in pairs(nepoznatiParametri) do
table.insert(tekst, '[[Категорија:Корисник:Ђидо:Инфокутија/параметар ' .. k .. '/непознат]]')
break
end
end
return table.concat(tekst)
end
return modul