Module:Lua json
Documentation for this module may be created at Module:Lua json/doc
local p = {}
local json = require("Module:Json")
-- Funktion zum Durchsuchen der Seiten nach dem angegebenen Titelwert
function p.getDataByTitle(titleParam, titleValue, targetParam)
local pages = mw.title.new('Special:PrefixIndex/Data:' .. titleValue)
-- Überprüfen, ob die Seiten existieren und durchsuchbar sind
if pages and pages.exists then
local results = {}
-- Iteration über die Seiten
for _, page in ipairs(mw.ext.pageinfo.getPagesInCategory(pages.prefixedText)) do
local content = mw.title.new(page.fullText)
-- Überprüfen, ob die Seite existiert und das Content-Model JSON ist
if content and content.exists and content.contentModel == "json" then
local data = mw.text.jsonDecode(content:getContent())
-- Überprüfen, ob der angegebene Parameter existiert und den richtigen Wert hat
if data and data[titleParam] == titleValue then
table.insert(results, data[targetParam])
end
end
end
-- Rückgabe der Ergebnisse
return results
else
-- Wenn die Seiten nicht existieren oder nicht durchsuchbar sind, wird ein Fehler ausgegeben
return "Error: Unable to find pages with the given prefix"
end
end
return p