Módulo:PetOutfitsVisualizer: mudanças entre as edições

De TibiaRPGBrasil Wiki
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
Linha 3: Linha 3:
function p.render(frame)
function p.render(frame)
     local outfitsStr = frame.args.outfits or ""
     local outfitsStr = frame.args.outfits or ""
     local container = mw.html.create('div')
     local container = mw.html.create('div'):addClass('pet-outfit-gallery')
         :addClass('pet-outfit-gallery')
    local childContainer = mw.html.create('div')
         :addClass('pet-outfit-gallery-child')
         :css({
         :css({
             display = 'flex',
             display = 'flex',
Linha 30: Linha 31:
             box:node(textDiv)
             box:node(textDiv)


             container:node(box)
             childContainer:node(box)
         end
         end
     end
     end
 
    container:node(childContainer)
     return tostring(container)
     return tostring(container)
end
end


return p
return p

Edição das 19h37min de 16 de agosto de 2025

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 container = mw.html.create('div'):addClass('pet-outfit-gallery')
    local childContainer = mw.html.create('div')
        :addClass('pet-outfit-gallery-child')
        :css({
            display = 'flex',
            flexWrap = 'wrap',
            gap = '10px'
        })

    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