19.602
Bearbeitungen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| 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") | |||
function p.Faktenbox(frame) | function p.Faktenbox(frame) | ||
| Zeile 156: | Zeile 157: | ||
-- Berufe-Liste durchiterieren | -- Berufe-Liste durchiterieren | ||
for _, beruf in ipairs(str.splitAndStrip(beruf, ";")) do | for _, beruf in ipairs(str.splitAndStrip(beruf, ";")) do | ||
local | local beruf_pagename = ber.getBerufPagename(beruf) | ||
local geschlecht = fbdata.pargs["Geschlecht"] or "" | local geschlecht = fbdata.pargs["Geschlecht"] or "" | ||
-- | -- Berufname ermitteln | ||
local selector = "[[:+ | local selector = "[[:+]]" .. | ||
"[[-has subobject::" .. beruf_pagename .. "]]" .. | |||
"[[Bemerkung::Einzahl]]" .. | |||
"[[Geschlecht::" .. geschlecht .. "]]" | |||
local query = {selector, "?BerufTemp", ["limit"] = 1} | |||
local query = {selector, "? | |||
-- Wörterbuch befragen | -- Wörterbuch befragen | ||
local | local ask = mw.smw.ask(query) | ||
mw.logObject(ask, "ask") | |||
if ask ~= nil then | |||
beruf = ask[1]["BerufTemp"] | |||
end | end | ||
-- Beruf zu Liste und Attributen hinzufügen | -- Beruf zu Liste und Attributen hinzufügen | ||
| Zeile 189: | Zeile 175: | ||
t = t .. ", " | t = t .. ", " | ||
end | end | ||
t = t .. "[[" .. | t = t .. "[[" .. beruf_pagename .. "|" .. beruf .. "]]" | ||
smw.addAttrToList(fbdata.attr.list, "Beruf", beruf) | smw.addAttrToList(fbdata.attr.list, "Beruf", beruf) | ||
smw.addAttrToList(fbdata.attr.list, "BerufTemp", beruf) | smw.addAttrToList(fbdata.attr.list, "BerufTemp", beruf) | ||
smw.addAttrToList(fbdata.attr.list, "BerufSeite", | smw.addAttrToList(fbdata.attr.list, "BerufSeite", beruf_pagename) | ||
end | end | ||
t = "<dt>Beruf</dt><dd>" .. t .. "</dd>" | t = "<dt>Beruf</dt><dd>" .. t .. "</dd>" | ||