Modul:Straße: Unterschied zwischen den Versionen

keine PLZ bei ehemaligen Straßen
(local smw = require("Modul:SMW"))
(keine PLZ bei ehemaligen Straßen)
 
(14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 23: Zeile 23:


-- Postleitzahl ermitteln
-- Postleitzahl ermitteln
local stadtteile = str.splitAndStrip(fbdata.pargs["Stadtteil"], ";")
if not com.isTrue(fbdata.pargs["Ehemals"]) then
fbdata.plz = geo.stadtteil2PLZ(stadtteile)
local stadtteile = str.splitAndStrip(fbdata.pargs["Stadtteil"], ";")
fbdata.plz = geo.stadtteil2PLZ(stadtteile)
end


-- Tabs einsammeln und zusammenfügen
-- Tabs einsammeln und zusammenfügen
Zeile 33: Zeile 35:
-- Straßen-spezifische Kategorien usw.
-- Straßen-spezifische Kategorien usw.
if fbdata.pargs["Stadtteil"] == nil then
if fbdata.pargs["Stadtteil"] == nil then
t = t .. "[[Kategorie:Straßen ohne Stadtteil]]"
fab.addWartungsmeldung(fbdata, "Straßen ohne Stadtteil")
end
end
if fbdata.pargs["Ort"] == nil then
if fbdata.pargs["Ort"] == nil then
Zeile 109: Zeile 111:
-- Karte erstellen
-- Karte erstellen
if karten_args_vorhanden or n_gebaeude > 0 then
if karten_args_vorhanden or n_gebaeude > 0 then
args["nomap"] = "ja" -- kar.karte() rendert NICHT die Karte!
local t_karte -- sondern füllt nur SMW-DB und geoobjects
t_karte, fbdata.geoobjects = kar.karte(fbdata.frame, args) -- und setzt Kategorien
t = t .. t_karte
-- Karten-Query zusammensetzen
-- Karten-Query zusammensetzen
local query = {
local query = gebaeude_selector
gebaeude_selector .. " OR [[" .. fbdata.pagename .. "]]",
local geojson_pagename = args["geojson"] or fbdata.pagename
if not wik.pageExists("GeoJson:" .. geojson_pagename) then
query = query .. " OR [[" .. fbdata.pagename .. "]]"
geojson_pagename = ""
end
query = {
query,
["format"] = "leaflet", ["limit"] = "10000",
["format"] = "leaflet", ["limit"] = "10000",
["zoom"] = args["zoom"],
["zoom"] = args["zoom"],
Zeile 125: Zeile 129:
table.insert(query, "?" .. q)
table.insert(query, "?" .. q)
end
end
if fbdata.geoobjects.geojson.exists then
if geojson_pagename ~= "" then
query["geojson"] = fbdata.geoobjects.geojson.pagename
query["geojson"] = geojson_pagename
elseif args["lat"] ~= nil and args["lon"] ~= nil then
elseif args["lat"] ~= nil and args["lon"] ~= nil then
query["centre"] = args["lat"] .. "," .. args["lon"]
query["centre"] = args["lat"] .. "," .. args["lon"]
Zeile 133: Zeile 137:
end
end
-- Karte per #ask rendern
-- Karte per #ask rendern
t = t .. fbdata.frame:callParserFunction("#ask", query)
local t_karte = fbdata.frame:callParserFunction("#ask", query)
-- kar.karte() hinterher schieben
if str.strip(t_karte or "") ~= "" then
t = t .. t_karte
args["nomap"] = "ja" -- kar.karte() rendert NICHT die Karte, sofern #ask-Karte erfolgreich
end
t_karte, fbdata.geoobjects = kar.karte(fbdata.frame, args) -- kar.karte() setzt Kategorien
t = t .. t_karte
end
end
end
end