Modul:Lifespan

Fra Wikisida.no
Hopp til navigering Hopp til søk

Dokumentasjon for denne modulen kan opprettes på Modul:Lifespan/dok

local p = {}
local mw = require("mw")

function p.y(frame)
    local entity = mw.wikibase.getEntityObject()

    -- If the page is not connected to Wikidata
    if not entity then
        return ""
    end

    local claims = entity.claims

    -- Get birth year (P569)
    local birthYear
    local birthClaims = claims and claims["P569"]
    if birthClaims and birthClaims[1].mainsnak.datavalue then
        local birthTime = birthClaims[1].mainsnak.datavalue.value.time
        birthYear = string.sub(birthTime, 2, 5)
    end

    -- Get death year (P570)
    local deathYear
    local deathClaims = claims and claims["P570"]
    if deathClaims and deathClaims[1].mainsnak.datavalue then
        local deathTime = deathClaims[1].mainsnak.datavalue.value.time
        deathYear = string.sub(deathTime, 2, 5)
    end

    -- Return localized output
    if birthYear and deathYear then
        return birthYear .. "–" .. deathYear
    elseif birthYear then
        return "født " .. birthYear
    elseif deathYear then
        return "død " .. deathYear
    else
        return "Ukjent fødselsdato[[Kategori:Sider uten fødselsår på Wikidata]]"
    end
end

return p