Módulo:PetOutfitsVisualizer
Ir para navegação
Ir para pesquisar
A documentação para este módulo pode ser criada em Módulo:PetOutfitsVisualizer/doc
local p = {}
function p.render(frame)
local outfitsStr = frame.args.outfits or ""
local countOutfits = select(2, outfitsStr:gsub(";", ""))
local lineBreak = tonumber(frame.args.linebreak) or countOutfits
local container = mw.html.create('div'):addClass('pet-outfit-gallery')
local childContainer = mw.html.create('div')
:addClass('pet-outfit-gallery-child')
:css({
display = 'grid',
["grid-template-columns"] = 'repeat('.. lineBreak ..', 1fr)',
gap = '10px'
})
local line = 0
for outfitPair in outfitsStr:gmatch("[^;]+") do
local file, caption = outfitPair:match("^%s*(.-)%s*,%s*(.-)%s*$")
if file then
local box = mw.html.create('div')
:addClass('gallerybox')
-- Imagem
local imgDiv = mw.html.create('div')
:css({ textAlign = 'center' })
:wikitext(string.format('[[File:%s]]', file))
box:node(imgDiv)
-- Texto/legenda
local textDiv = mw.html.create('div')
:addClass('gallerytext')
:css({ textAlign = 'center', marginTop = '4px' })
:wikitext(caption or "")
box:node(textDiv)
childContainer:node(box)
end
end
container:node(childContainer)
return tostring(container)
end
return p