Module:LuaTest

From WikiFur Data
Revision as of 23:18, 3 January 2024 by GreenReaper (talk | contribs) (Testing code by Edpo)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Documentation for this module may be created at Module:LuaTest/doc

-- Módulo para recuperar a glosa de um sentido de um lexema
local p = {}

-- Função para obter a glosa de um sentido
function p.getGloss(frame)
    local lexemeId = frame.args[1] or error("ID do lexema não fornecido")
    local senseId = frame.args[2] or error("ID do sentido não fornecido")
    local languageCode = frame.args[3] or error("Código de linguagem não fornecido")

    -- Carregar o lexema
    local lexeme = mw.wikibase.getEntity(lexemeId)

    -- Verificar se o lexema foi carregado corretamente
    if not lexeme then
        return nil, "Lexema não encontrado"
    end

    -- Obter a lista de sentidos do lexema
    local senses = lexeme:getSenses()

    -- Procurar o sentido desejado na lista
    local targetSense
    for _, sense in ipairs(senses) do
        if sense.id == senseId then
            targetSense = sense
            break
        end
    end

    -- Verificar se o sentido foi encontrado
    if not targetSense then
        return nil, "Sentido não encontrado"
    end

    -- Obter a glosa do sentido na linguagem desejada
    local gloss = targetSense:getGloss(languageCode)

    -- Verificar se a glosa foi encontrada
    if not gloss then
        return nil, "Glosa não encontrada para a linguagem especificada"
    end

    return gloss
end

return p