Documentationcréerpurger
local p = {}

function p.recompenses(frame)
    local qid = frame.args[1] or frame.args.qid

    local entity
    if qid and qid ~= "" then
        entity = mw.wikibase.getEntity(qid)
    else
        entity = mw.wikibase.getEntity()
    end

    if not entity or not entity.claims or not entity.claims.P166 then
        return ""
    end

    local out = {}
    table.insert(out, '{| class="wikitable sortable"')
    table.insert(out, '! Récompense')
    table.insert(out, '! Date')

    for _, claim in ipairs(entity.claims.P166) do
        local recompense = mw.wikibase.renderSnak(claim.mainsnak)

        local date = ""
        if claim.qualifiers and claim.qualifiers.P585 then
            date = mw.wikibase.renderSnak(claim.qualifiers.P585[1])
        end

        table.insert(out, "|-")
        table.insert(out, "| " .. recompense)
        table.insert(out, "| " .. date)
    end

    table.insert(out, "|}")
    return table.concat(out, "\n")
end

return p