Mudanças entre as edições de "Módulo:TesteBossYawn"

De Wiki Gla
Ir para navegação Ir para pesquisar
Etiqueta: Reversão manual
Linha 31: Linha 31:
     return frame:preprocess([[
     return frame:preprocess([[
         <div class="boss-component" data-json="]] .. jsonData .. [[">
         <div class="boss-component" data-json="]] .. jsonData .. [[">
             {{#widget:TesteBossYawnv2}}
             {{#widget:TesteBossYawnv3}}
         </div>
         </div>
     ]])
     ]])

Edição das 17h11min de 9 de abril de 2026

A documentação para este módulo pode ser criada em Módulo:TesteBossYawn/doc

local p = {}

function p.loadBossData(bossName)
	local normalizedName = bossName:gsub("^%l", string.upper)
	
    local success, bossData = pcall(function()
        return require(normalizedName.."/data")
    end)
    if not success then
        return normalizedName .. "nao encontrado"
    end
    
    return bossData
end

function p.render(frame)
    local bossName = frame.args.boss
    
    if not bossName or bossName == "" then
        return "<b>Erro:</b> Parâmetro 'boss' não especificado."
    end
    
    local bossData = p.loadBossData(bossName)
    if not bossData then
        return "<b>Erro:</b> Boss '" .. bossName .. "' não encontrado."
    end
    
    local jsonData = mw.text.jsonEncode(bossData)
    jsonData = mw.text.encode(jsonData)

    return frame:preprocess([[
        <div class="boss-component" data-json="]] .. jsonData .. [[">
            {{#widget:TesteBossYawnv3}}
        </div>
    ]])
end

return p