Modul:Person/Work: Unterschied zwischen den Versionen

1.429 Bytes hinzugefügt ,  Gestern um 22:23
keine Bearbeitungszusammenfassung
(Die Seite wurde neu angelegt: „local p = {} local com = require("Modul:Common") local fab = require("Modul:Faktenbox") local smw = require("Modul:SMW") function p.Faktenbox(frame) -- mw.logObject(frame, "Faktenbox(frame)") -- Konsolenzeile zum Debuggen: -- =p.Faktenbox{pargs={Vorname="Hans",Nachname="Wurst",Geburtsort="Fürth",Geburtsdatum="2025/02/01"}} -- Basis-Faktenbox-Daten (Klasse/Kategorie/Formular) local fbdata = fab.getFbdata(frame) fbdata.klasse = {"Person"} fbdata.k…“)
 
Keine Bearbeitungszusammenfassung
(21 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:


local com = require("Modul:Common")
local com = require("Modul:Common")
local str = require("Modul:String")
local fab = require("Modul:Faktenbox")
local fab = require("Modul:Faktenbox")
local smw = require("Modul:SMW")
local smw = require("Modul:SMW")
local ber = require("Modul:Beruf")


function p.Faktenbox(frame)
function p.Faktenbox(frame)
Zeile 83: Zeile 85:
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Todesursache", attr_val = fbdata.shoah["Todesursache"], val_show_only = true}
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Todesursache", attr_val = fbdata.shoah["Todesursache"], val_show_only = true}
end
end
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Beruf", delimiter = ";"}
t = t .. p.zeileBeruf(fbdata)
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Partei", delimiter = ";"}
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Partei", delimiter = ";"}
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Eigenart", delimiter = ";"}
t = t .. fab.zeile{fbdata = fbdata, attr_name = "Eigenart", delimiter = ";"}
Zeile 143: Zeile 145:
-- mw.logObject(ask_result[1], "ask_result[1]")
-- mw.logObject(ask_result[1], "ask_result[1]")
     return ask_result[1]
     return ask_result[1]
end
function p.zeileBeruf(fbdata)
-- mw.log("zeileBeruf(fbdata)")
-- mw.logObject(fbdata.pargs, "fbdata.pargs")
-- Konsolenzeile zum Debuggen:
-- =p.zeileBeruf{attr={list={}},pargs={Beruf="Tester",Geschlecht="weiblich"}}
local t = ""
local beruf = fbdata.pargs["Beruf"] or ""
if beruf ~= "" then
-- Berufe-Liste durchiterieren
for _, beruf in ipairs(str.splitAndStrip(beruf, ";")) do
local beruf_fullpagename = ber.getBerufFullpagename(beruf)
if beruf_fullpagename ~= nil then
local geschlecht = fbdata.pargs["Geschlecht"] or "männlich" -- männlich = generisch Maskulin
beruf =
ber.getBeruf(beruf_fullpagename, "Einzahl", geschlecht) or
beruf
end
-- Beruf zu Werte-Liste hinzufügen
if t ~= "" then
t = t .. ", "
end
if beruf_fullpagename ~= nil then
t = t .. "[[:" .. beruf_fullpagename .. "|" .. beruf .. "]]"
if string.sub(beruf_fullpagename, 1, 10) == "Kategorie:" then
t = t .. "[[" .. beruf_fullpagename .. "]]"
end
else
t = t .. "[[" .. beruf .. "]]"
beruf_fullpagename = beruf
end
smw.addAttrToList(fbdata.attr.list, "Beruf", beruf)
smw.addAttrToList(fbdata.attr.list, "BerufTemp", beruf)
smw.addAttrToList(fbdata.attr.list, "BerufSeite", beruf_fullpagename)
end
t = "<dt>Beruf</dt><dd>" .. t .. "</dd>"
end
-- mw.logObject(t, "t")
mw.logObject(fbdata.attr.list, "fbdata.attr.list")
return t
end
end


return p
return p