Modul:Person/Work: Unterschied zwischen den Versionen

1.629 Bytes hinzugefügt ,  Freitag um 14:36
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
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")
Zeile 143: Zeile 144:
-- 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{pargs={Beruf="Tester",Geschlecht="weiblich"}}
local t = ""
local beruf = fbdata.pargs["Beruf"] or ""
if beruf ~= "" then
local geschlecht = fbdata.pargs["Geschlecht"] or ""
-- Beruf-Seite ermitteln
local selector = "[[:+]][[KlassenName::Beruf]]"
selector = selector ..
"[[Wörterbuch::Einzahl weiblich=" .. beruf .."]] OR " ..
"[[Wörterbuch::Einzahl männlich=" .. beruf .."]]"
mw.logObject(selector, "selector")
local query = {selector, "?#-", "?Wörterbuch"}
query["limit"] = 1
mw.logObject(query, "query")
local beruf_woerterbuch = mw.smw.ask(query)
mw.logObject(beruf_woerterbuch, "beruf_woerterbuch")
local beruf_page
if beruf_woerterbuch ~= nil then
beruf_page = beruf_woerterbuch[1][1]
beruf_woerterbuch = beruf_woerterbuch[1]["Wörterbuch"]
mw.logObject(beruf_page, "beruf_page")
mw.logObject(beruf_woerterbuch, "beruf_woerterbuch")
local tmp = {}
for i, v in pairs(beruf_woerterbuch) do
tmp[i] = str.splitAndStrip(beruf_woerterbuch[i], "=")
tmp[tmp[i][1]] = tmp[i][2]
end
beruf_woerterbuch = tmp
mw.logObject(beruf_woerterbuch, "beruf_woerterbuch")
if geschlecht == "weiblich" then
beruf = beruf_woerterbuch["Einzahl weiblich"]
elseif geschlecht == "männlich" then
beruf = beruf_woerterbuch["Einzahl männlich"]
end
else
beruf_page = beruf
end
mw.logObject(beruf, "beruf")
mw.logObject(beruf_page, "beruf_page")
end
return t
end
end


return p
return p