Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
local buch = {} | local buch = {} | ||
-- Vereinfachte Debugging-Funktion | |||
local function getSeriesPages(seriesTitle) | local function getSeriesPages(seriesTitle) | ||
if not seriesTitle or seriesTitle == "" then | if not seriesTitle or seriesTitle == "" then | ||
Zeile 6: | Zeile 7: | ||
end | end | ||
local queryData = { | local queryData = { | ||
query = "[[Hat Titel::" .. seriesTitle .. "]]", | query = "[[Hat Titel::" .. seriesTitle .. "]]", | ||
limit = 1 | limit = 1 | ||
} | } | ||
local result = mw.smw.getQueryResult(queryData) | local result = mw.smw.getQueryResult(queryData) | ||
local debugOutput = "Abfrage: " .. mw.text.jsonEncode(queryData) .. "\n" | local debugOutput = "Abfrage: " .. mw.text.jsonEncode(queryData) .. "\n" | ||
Zeile 19: | Zeile 18: | ||
for _, data in pairs(result.results) do | for _, data in pairs(result.results) do | ||
debugOutput = debugOutput .. "Ergebnisse: " .. mw.text.jsonEncode(data) .. "\n" | debugOutput = debugOutput .. "Ergebnisse: " .. mw.text.jsonEncode(data) .. "\n" | ||
return data.fulltext | return data.fulltext, debugOutput | ||
end | end | ||
end | end | ||
Zeile 61: | Zeile 33: | ||
output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. title .. ']]</td></tr>' | output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. title .. ']]</td></tr>' | ||
-- | -- Debugging der Serie | ||
if args[" | if args["Hat Serie"] then | ||
local seriesPage, debugInfo = getSeriesPages(args["Hat Serie"]) | |||
local | |||
output = output .. '<tr><td colspan="2"><pre>' .. debugInfo .. '</pre></td></tr>' | output = output .. '<tr><td colspan="2"><pre>' .. debugInfo .. '</pre></td></tr>' | ||
end | end | ||
output = output .. '</table>' | output = output .. '</table>' | ||
return output | return output |
Version vom 21. November 2024, 11:05 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Publikation/Buch/Doku erstellt werden
local buch = {}
-- Vereinfachte Debugging-Funktion
local function getSeriesPages(seriesTitle)
if not seriesTitle or seriesTitle == "" then
return nil, "Kein Serienname angegeben."
end
local queryData = {
query = "[[Hat Titel::" .. seriesTitle .. "]]",
limit = 1
}
local result = mw.smw.getQueryResult(queryData)
local debugOutput = "Abfrage: " .. mw.text.jsonEncode(queryData) .. "\n"
if result and result.results and next(result.results) then
for _, data in pairs(result.results) do
debugOutput = debugOutput .. "Ergebnisse: " .. mw.text.jsonEncode(data) .. "\n"
return data.fulltext, debugOutput
end
end
debugOutput = debugOutput .. "Keine Ergebnisse gefunden.\n"
return nil, debugOutput
end
-- Hauptfunktion zur Darstellung der Buchinformationen
function buch.render(args, main)
local output = '<table class="publikation buch">'
-- Titel
local title = args["Titel"] or "Unbekannt"
output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. title .. ']]</td></tr>'
-- Debugging der Serie
if args["Hat Serie"] then
local seriesPage, debugInfo = getSeriesPages(args["Hat Serie"])
output = output .. '<tr><td colspan="2"><pre>' .. debugInfo .. '</pre></td></tr>'
end
output = output .. '</table>'
return output
end
return buch