Modul:Person/Work: Unterschied zwischen den Versionen

keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 5: Zeile 5:
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/Work")
local ber = require("Modul:Beruf")


function p.Faktenbox(frame)
function p.Faktenbox(frame)
Zeile 159: Zeile 159:
local beruf_fullpagename = ber.getBerufFullpagename(beruf)
local beruf_fullpagename = ber.getBerufFullpagename(beruf)
if beruf_fullpagename ~= nil then
if beruf_fullpagename ~= nil then
-- Berufname ermitteln
local geschlecht = fbdata.pargs["Geschlecht"] or "männlich" -- männlich = generisch Maskulin
local geschlecht = fbdata.pargs["Geschlecht"] or "männlich" -- männlich = generisch Maskulin
local selector = "[[Bemerkung::Einzahl]]" ..
beruf =
"[[-has subobject::" .. beruf_fullpagename .. "]]" ..
ber.getBeruf(beruf_fullpagename, "Einzahl", geschlecht) or
"[[Geschlecht::" .. geschlecht .. "]]"
beruf
local query = {selector, "?BerufTemp", ["limit"] = 1}
-- Wörterbuch befragen
local ask = mw.smw.ask(query)
if ask ~= nil then
beruf = ask[1]["BerufTemp"]
end
end
end
-- Beruf zu Werte-Liste hinzufügen
-- Beruf zu Werte-Liste hinzufügen
Zeile 182: Zeile 175:
else
else
t = t .. "[[" .. beruf .. "]]"
t = t .. "[[" .. beruf .. "]]"
beruf_fullpagename = beruf
end
end
smw.addAttrToList(fbdata.attr.list, "Beruf", beruf)
smw.addAttrToList(fbdata.attr.list, "Beruf", beruf)
Zeile 190: Zeile 184:
end
end
-- mw.logObject(t, "t")
-- mw.logObject(t, "t")
-- mw.logObject(fbdata.attr.list, "fbdata.attr.list")
mw.logObject(fbdata.attr.list, "fbdata.attr.list")
return t
return t
end
end


return p
return p