Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 7: | Zeile 7: | ||
end | end | ||
-- Korrekte semantische Syntax | |||
local queryData = { | local queryData = { | ||
query = "[[Hat Titel::" .. seriesTitle .. "]]", | query = "[[Hat Titel::" .. seriesTitle .. "]]", -- Semantische Bedingung | ||
limit = 1 | limit = 1 | ||
} | } | ||
Zeile 24: | Zeile 25: | ||
return nil, debugOutput | return nil, debugOutput | ||
end | end | ||
-- Hauptfunktion zur Darstellung der Buchinformationen | -- Hauptfunktion zur Darstellung der Buchinformationen |
Version vom 21. November 2024, 11:08 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
-- Korrekte semantische Syntax
local queryData = {
query = "[[Hat Titel::" .. seriesTitle .. "]]", -- Semantische Bedingung
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