Modul:Grundstück/Work: Unterschied zwischen den Versionen

keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 87: Zeile 87:
fbdata.attr.subid = geb.getSubobjectID(fbdata.pargs)
fbdata.attr.subid = geb.getSubobjectID(fbdata.pargs)
local subobject_pagename = fbdata.pagename .. "#" .. fbdata.attr.subid
local subobject_pagename = fbdata.pagename .. "#" .. fbdata.attr.subid
fbdata.pargs = {}
queryGebaeudeArgs(fbdata.pargs, subobject_pagename)
queryGebaeudeArgs(fbdata.pargs, subobject_pagename)
mw.logObject(fbdata.pargs, "fbdata.pargs")
mw.logObject(fbdata.pargs, "fbdata.pargs")
Zeile 92: Zeile 93:
if fbdata.pargs ~= {} then
if fbdata.pargs ~= {} then
fbdata.attr.noattr = true
fbdata.attr.noattr = true
t = geb.faktenbox(fbdata) -- Geo-Subjekte in pargs rückverwandeln
t = geb.faktenbox(fbdata)
end
end
mw.logObject(t, "t")
mw.logObject(t, "t")
Zeile 99: Zeile 100:


function queryGebaeudeArgs(args, subobject_pagename) -- Gebäude-Attribute von subobject abfragen
function queryGebaeudeArgs(args, subobject_pagename) -- Gebäude-Attribute von subobject abfragen
mw.log("queryGebaeudeArgs(args, subobject_pagename)")
-- mw.log("queryGebaeudeArgs(args, subobject_pagename)")
mw.logObject(subobject_pagename, "subobject_pagename")
-- mw.logObject(subobject_pagename, "subobject_pagename")
args = {}
local query = "[[" .. subobject_pagename .. "]]"
local query = "[[" .. subobject_pagename .. "]]"
for _, a in ipairs(geb.gebaude_attr) do
for _, a in ipairs(geb.gebaude_attr) do
Zeile 107: Zeile 107:
end
end
query = query .. "|?GeoSubobject#-|?#-"
query = query .. "|?GeoSubobject#-|?#-"
mw.logObject(query, "query")
-- mw.logObject(query, "query")
val = mw.smw.ask(query)
val = mw.smw.ask(query)
mw.logObject(val, "val")
-- mw.logObject(val, "val")
if val == nil then
if val == nil then
t = t .. "<br>Gebäude " ..
t = t .. "<br>Gebäude " .. (args["Objekt"] or "(fehlt)") ..
(args["Objekt"] or "(nicht angegeben)") ..
" mit Baujahr " .. (args["Baujahr"] or "(fehlt)") ..
" mit Baujahr " ..
(args["Baujahr"] or "(nicht angegeben)") ..
" nicht gefunden<br>"
" nicht gefunden<br>"
elseif #val > 1 then
elseif #val > 1 then
t = t .. "<br>Mehrere Gebäude " ..
t = t .. "<br>Mehrere (kein eindeutiges) Gebäude " ..
(args["Objekt"] or "(nicht angegeben)") ..
(args["Objekt"] or "(fehlt)") .. " mit Baujahr " ..
" mit Baujahr " ..
(args["Baujahr"] or "(fehlt)") .. " gefunden<br>"
(args["Baujahr"] or "(nicht angegeben)") ..
" gefunden<br>"
else
else
-- Attribute-table zu Argumente (pargs) rückwandeln
-- Attribute-table zu Argumente (pargs) rückwandeln
Zeile 136: Zeile 132:
getGeoArgs(args, val.GeoSubobject)
getGeoArgs(args, val.GeoSubobject)
end
end
mw.logObject(args, "args")
-- mw.logObject(args, "args")
end
end


function getGeoArgs(args, geo_subobjects) -- wandelt die Geo-Subjekte wieder ein pargs zurück
function getGeoArgs(args, geo_subobjects) -- wandelt die Geo-Subjekte wieder ein pargs zurück
mw.log("getGeoArgs(args, geo_subobjects)")
-- mw.log("getGeoArgs(args, geo_subobjects)")
mw.logObject(geo_subobjects, "geo_subobjects")
-- mw.logObject(geo_subobjects, "geo_subobjects")
if geo_subobjects ~= nil then
if geo_subobjects ~= nil then
if type(geo_subobjects) ~= "table" then
if type(geo_subobjects) ~= "table" then
Zeile 179: Zeile 175:
end
end
end
end
mw.logObject(args, "args")
-- mw.logObject(args, "args")
end
end


return p
return p