Modul:Person

Version vom 23. Januar 2024, 02:15 Uhr von Red Rooster (Diskussion | Beiträge) (Fixed error in p.Daten)

Dies ist das Test-Modul, welches einige alte Plugins obsolet macht (vor allem Variables), welches ab MediaWiki >1.35 vermutlich Probleme macht, da abgekündigt.


local p = {} --p stands for package

function p.Faktenbox( frame )
	pf = frame:getParent()
	args = pf.args
	
	-- Before you ask: No, you cant' use extensionTag here!
	tpl_bild = p.Bild( frame, args )
	tab_bild=''
	if tpl_bild:gsub("%s+", "") ~= '' then
		tab_bild='<tab name=Bild>' .. 
		         tpl_bild .. '</tab>'
	end
	
	-- The tab "Daten" is visible everytime
	tpl_daten = p.Daten( frame, args )
	tab_daten='<tab name=Daten>' .. 
		      tpl_daten .. '</tab>'
	
	tpl_funktionen = p.Funktionen( frame, args )
	tab_funktionen=''
	if tpl_funktionen:gsub("%s+", "") ~= '' then
		tab_funktionen='<tab name=Funktionen>' .. 
		               tpl_funktionen .. '</tab>'
	end
	
	tpl_auszeichnungen = p.Auszeichnungen( frame, args )
	tab_auszeichnungen=''
	if tpl_auszeichnungen:gsub("%s+", "") ~= '' then
		tab_auszeichnungen='<tab name=Auszeichnungen>' .. 
		                   tpl_auszeichnungen .. '</tab>'
	end

	t ='<div class=factbox><tabs>' .. 
	   tab_bild .. 
	   tab_daten .. 
	   tab_funktionen ..
	   tab_auszeichnungen ..
	   '</tabs></div>'

	-- Use preprocess to render the factbox and all contens at once
	return frame:preprocess(t)
end

function p.Bild( frame, args )
	t = frame:expandTemplate{title = 'Bildertab', args={
		Bild=args.Bild}
	}
    return t
end

function p.Daten( frame, args )
	t = frame:expandTemplate{title = 'Person.Daten', args={
		Namenszusatz=args.Namenszusatz,
		Vorname=args.Vorname,
		Nachname=args.Nachname,
        Geschlecht=args.Geschlecht,
		AbweichendeNamensform=args.AbweichendeNamensform,
        Geburtstag=args.Geburtstag,
        Geburtsjahr=args.Geburtsjahr,
        Geburtsdatum=args.Geburtsdatum,
        Geburtsort=args.Geburtsort,
        Todestag=args.Todestag,
        Todesjahr=args.Todesjahr,
        Todesdatum=args.Todesdatum,
        Todesort=args.Todesort,
        Beruf=args.Beruf,
		Partei=args.Partei,
		Eigenart=args.Eigenart,
		Religion=args.Religion,
		Friedhof=args.Friedhof,
		Grabstelle=args.Grabstelle,
		Nachlass=args.Nachlass,
		GND=args.GND}
	}
    return t
end

function p.Funktionen ( frame, args )
	t = frame:expandTemplate{title = 'Person.Funktionen'}
	return t
end

function p.Auszeichnungen ( frame, args )
	t = frame:expandTemplate{title = 'Person.Auszeichnungen'}
	return t
end

return p