Modul:Person: Unterschied zwischen den Versionen

TabelleAeltesteOhneTodesdatum() in Modul:Person/Wartung verschoben
(tostring(p["Verstorben"] or ""))
(TabelleAeltesteOhneTodesdatum() in Modul:Person/Wartung verschoben)
Zeile 3: Zeile 3:
local com = require("Modul:Common")
local com = require("Modul:Common")
local str = require("Modul:String")
local str = require("Modul:String")
local htm = require("Modul:HTML")
local smw = require("Modul:SMW")
local smw = require("Modul:SMW")
local wik = require("Modul:Wiki")
local wik = require("Modul:Wiki")
Zeile 184: Zeile 183:
-- 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
end
function p.TabelleAeltesteOhneTodesdatum()
t = ""
local query = {"[[KlassenName::Person]]",
"?#-", "?Geburtsdatum#ISO", "?Todesdatum#ISO", "?Verstorben",
sort = "Geburtsdatum", order = "asc",
mainlabel = "-", limit = 10000 }
query = mw.smw.ask(query)
-- Personen extrahieren
personen = {}
for _, p in ipairs(query) do
if p["Geburtsdatum"] ~= nil and p["Todesdatum"] == nil then
table.insert(personen,
{["Person"] = p[1],
["Geburtsdatum"] = p["Geburtsdatum"],
["Verstorben"] = p["Verstorben"]})
end
end
-- Tabelle aufbauen
t = t .. htm.tableHeader{"Person", "Geburtsdatum", "Verstorben"}
for _, p in ipairs(personen) do
t = t .. htm.tableLine{
"[[" .. p["Person"] .. "]]", p["Geburtsdatum"], tostring(p["Verstorben"] or "")}
end
t = t .. htm.tableFooter()
return t
return t
end
end


return p
return p