Hopp til innhald

Modul:Død

Frå Wikipedia – det frie oppslagsverket

Dokumentasjon for modulen kan opprettast på Modul:Død/dok


-- Gjeremål: 
-- * anna fødenamn

local sams = require('Modul:Sams')
local p = {}
 
function p.hovud(ramme)
    sidenamn = mw.title.getCurrentTitle().fullText
    if sidenamn == 'Mal:Død-lua' then
        return ''
    end
    arg = ramme:getParent().args
    if arg[1] then
        argumentSplitta = mw.text.split(arg[1], ' ')
    else
        argumentSplitta = {''}
    end
    
    stad = ''
    dato = ''
    aar = ''
    maanad = ''
    dag = ''
    
    element = mw.wikibase.getEntityObject()
    if element and not arg[1] then
        datotabell = sams.hentDato(element, 'P570')
        aar = datotabell['år']
        maanad = sams.maanadnamn(datotabell['månad'])
        dag = datotabell['dag'] .. '.'
        if dag and maanad and aar then
        	dato = '[[' .. dag .. ' ' .. maanad .. ']] [[' .. aar .. ']]'
        elseif maanad and aar then
        	dato = maanad .. ' [[' .. aar .. ']]'
        elseif aar then
        	dato = '[[' .. aar .. ']]'
        end
    end

    l = table.maxn(argumentSplitta)
    
    if argumentSplitta[1]:find('%.$') then -- er ein dag
        dag = argumentSplitta[1]
        maanad = argumentSplitta[2]
        aar = argumentSplitta[3]
        if argumentSplitta[4] then
            stad = ' ' .. table.concat(argumentSplitta, ' ', 4, l)
        end
        dato = '[[' .. dag .. ' ' .. maanad .. ']] [[' .. aar .. ']]'
    elseif argumentSplitta[1]:find('[air]') and argumentSplitta[1]:len() > 2 then -- er ein månad
        maanad = argumentSplitta[1]
        aar = argumentSplitta[2]
        if argumentSplitta[3] then
            stad = ' ' .. table.concat(argumentSplitta, ' ', 3, l)
        end
        dato = maanad .. ' [[' .. aar .. ']]'
    elseif argumentSplitta[1]:find('[0123456789]') then -- er eit år
        aar = argumentSplitta[1]
        dato = 'i [[' .. aar .. ']]'
         if argumentSplitta[2] then
            stad = ' ' .. table.concat(argumentSplitta, ' ', 2, l)
        end
    end   
    
    kat = ''
    if dag and maanad then
        kat = kat .. '[[Kategori:Døde den ' .. dag .. ' ' .. maanad .. ']]'
    end
    if aar then
        kat = kat .. '[[Kategori:Døde i ' .. aar .. ']]'
    end
    
    tekst = dato .. kat
    
    return tekst
end
 
return p