Modul:Fødd
Dokumentasjon for modulen kan opprettast på Modul:Fødd/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:Fødd-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, 'P569')
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:Fødde den ' .. dag .. ' ' .. maanad .. ']]'
end
if aar then
kat = kat .. '[[Kategori:Fødde i ' .. aar .. ']]'
end
tekst = 'fødd ' .. dato .. stad .. kat
return tekst
end
return p