local p = {}
local dev = require("Modul:Development")
local htm = require("Modul:HTML")
local zeilen =
{ { "Wartungsmeldung", --[[ "Kategorie", "KlassenName", "Ehemals", ]] "Anzahl"},
{ ["Wartungsmeldung"] = "Adresse fehlerhaft", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Bild-Beschreibung fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Bilder-Galerie leer", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Bilder-Galerie übervoll", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Datei-Freiattribut-Fehler", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Datei-Freiattribut-Fehler Straßen-Angabe", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Datei-Freiattribut-Fehler Orts-Angabe", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Faktenbox ohne Formular-Daten", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Faktenbox-Bild fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Faktenbox-Bild existiert nicht", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Faktenbox fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Seitenname (Lemma) hat Semikolon", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Seitenname (Lemma) hat Schrägstrich", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Gebäude mit verdächtiger Straße-Hausnummer-Kombination", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Faktenbox-Karte (Position) fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
-- { ["Wartungsmeldung"] = "Faktenbox-Karte (Position) fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "Gaststätte", ["Ehemals"] = "" ]] },
-- { ["Wartungsmeldung"] = "Faktenbox-Karte (Position) fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "Gebäude", ["Ehemals"] = "" ]] },
-- { ["Wartungsmeldung"] = "Faktenbox-Karte (Position) fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "Straße", ["Ehemals"] = "" ]] },
-- { ["Wartungsmeldung"] = "Faktenbox-Karte (Position) fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "Stadtteil", ["Ehemals"] = "" ]] },
-- { ["Wartungsmeldung"] = "Faktenbox-Karte (Position) fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "Gewässer", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Gewässer ohne Stadtteil", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Kodierungsfehler - Objekt-Lokation bei ehemaligen Objekt funktioniert nicht", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Kodierungsfehler - Objekt-Lokation nicht gefunden", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Kodierungsfehler, aber Geokoordinate in SMW-DB noch vorhanden", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Kodierungsfehler und Geo-Koordinate nicht in SMW-DB vorhanden", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Fehler - fehlerhafte Koordinate", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Kodierungsfehler - Positionsangabe fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Geo-Kodierungsfehler - fehlende Geo-Koordinate trotz Objekt-Lokation", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Beruf-Seite fehlt", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Straßen ohne Stadtteil", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
{ ["Wartungsmeldung"] = "Faktenbox veraltet", --[[ ["Kategorie"] = "", ["KlassenName"] = "", ["Ehemals"] = "" ]] },
}
function p.Wartungstabelle(frame)
local frame = dev.GetFrameAndParentArgs(frame)
local t = ""
-- zeilen Tabelle sortieren
table.sort(zeilen,
function(z1, z2)
z1, z2 = z1["Wartungsmeldung"], z2["Wartungsmeldung"]
return z1 ~= nil and z2 ~= nil and string.byte(z1) < string.byte(z2)
end)
-- Tabelle zusammensetzen
for i, z in ipairs(zeilen) do
if i == 1 then
-- Tabellen-Überschrift
t = t .. htm.tableHeader(z)
else
-- Tabellen-Zeile
-- Anzahl ermitteln
local query = "[[:+]]"
for _, s in ipairs(zeilen[1]) do
if z[s] ~= "" and s ~= "Anzahl" then
query = query .. "[[" .. s .. "::" .. z[s] .. "]]"
end
end
query = query .. "|format=count"
z["Anzahl"] = mw.smw.ask(query)
if z["Anzahl"] == 0 then
z["Anzahl"] = ""
end
-- queryformlink zusammenbauen
query = ""
for _, s in ipairs(zeilen[1]) do
if z[s] ~= "" and s ~= "Anzahl" then
query = query ..
"Abfrage Wartungsmeldungen[" .. s .. "]=" .. z[s] .. "&"
end
end
query = query .. "_run"
z["Wartungsmeldung"] ="{{#queryformlink:" ..
"form=Abfrage Wartungsmeldungen" ..
"|link text=" .. z["Wartungsmeldung"] ..
"|query string=" .. query ..
"}}"
-- Zeile zusammenbauen
local line = {}
for _, s in ipairs(zeilen[1]) do
table.insert(line, z[s])
end
t = t .. htm.tableLine(line)
end
end
-- Tabellen-Fuß
t = t .. htm.tableFooter()
-- mw.logObject(t)
t = frame:preprocess(t)
return t
end
return p