Modul:Wartung: Unterschied zwischen den Versionen

Aus FürthWiki

Keine Bearbeitungszusammenfassung
Markierung: Zurückgesetzt
(Änderung 778835 von HeikoBot (Diskussion) rückgängig gemacht.)
Markierung: Rückgängigmachung
Zeile 4: Zeile 4:
local htm = require("Modul:HTML")
local htm = require("Modul:HTML")


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

Version vom 15. Januar 2026, 09:14 Uhr

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