26.714
Bearbeitungen
(+ Wartungsmeldung Datei ohne Formular-Daten) |
(+ AbfrageSeitenListe()) |
||
| Zeile 1: | Zeile 1: | ||
local p = {} | local p = {} | ||
local com = require("Modul:Common") | |||
local dev = require("Modul:Development") | local dev = require("Modul:Development") | ||
local htm = require("Modul:HTML") | local htm = require("Modul:HTML") | ||
| Zeile 121: | Zeile 122: | ||
mw.logObject(t) | mw.logObject(t) | ||
t = frame:preprocess(t) | t = frame:preprocess(t) | ||
return t | |||
end | |||
function p.AbfrageSeitenListe(frame) | |||
-- Kommandozeile zum Debuggen: | |||
-- =p.AbfrageSeitenListe{pargs={}} | |||
-- =p.AbfrageSeitenListe{pargs={["Wartungsmeldung"]="Bild-Beschreibung fehlt"}} | |||
local t = "" | |||
local frame, pargs = dev.GetFrameAndParentArgs(frame) | |||
-- Seiten-Selektor | |||
local selector = "" | |||
if not com.isEmpty(pargs["Wartungsmeldung"]) then | |||
selector = selector .. | |||
"[[Wartungsmeldung::~*" .. pargs["Wartungsmeldung"] .. "*]]" | |||
end | |||
if not com.isEmpty(pargs["Kategorie"]) then | |||
selector = selector .. | |||
"[[Kategorie:" .. pargs["Kategorie"] .. "]]" | |||
end | |||
if not com.isEmpty(pargs["Klasse"]) then | |||
selector = selector .. | |||
"[[KlassenName::" .. pargs["Klasse"] .. "]]" | |||
end | |||
if not com.isEmpty(pargs["Ehemals"]) then | |||
selector = selector .. | |||
"[[Ehemals::" .. pargs["Ehemals"] .. "]]" | |||
end | |||
if pargs["Namensraum"] == "(Seite)" or | |||
pargs["Namensraum"] == "Lemma" or | |||
pargs["Namensraum"] == "" then | |||
selector = "[[:+]]" .. selector | |||
elseif pargs["Namensraum"] == "Datei" then | |||
selector = "[[Datei:+]]" .. selector | |||
else | |||
selector = "[[:+]]" .. selector .. " OR [[Datei:+]]" .. selector | |||
end | |||
-- Anzahl ermitteln und anzeigen | |||
local query = {selector, format = "count"} | |||
query = mw.smw.ask(query) | |||
t = t .. "'''" .. query .. " Seiten gefunden'''<br>\n" | |||
-- ask hinzufügen | |||
query = {selector, | |||
"?Wartungsmeldung", | |||
"?Kategorie", | |||
"?KlassenName=Klasse", | |||
"?Ehemals#Ja,Nein", | |||
format = "table", | |||
limit = 200, | |||
mainlabel = "Seite"} | |||
if pargs["Klasse"] == "Gebäude" then | |||
table.insert(query, "?Straße") | |||
end | |||
t = t .. frame:callParserFunction("#ask", query) | |||
return t | return t | ||
end | end | ||
return p | return p | ||