Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 5: | Zeile 5: | ||
-- Funktion zur Extraktion der Gesamtbände aus der Serien-ID | -- Funktion zur Extraktion der Gesamtbände aus der Serien-ID | ||
function buch.getCompleteVolumes( | function buch.getCompleteVolumes(frame) | ||
if not mw.smw then | if not mw.smw then | ||
return "Semantic MediaWiki-Erweiterung nicht gefunden." | return "Semantic MediaWiki-Erweiterung nicht gefunden." | ||
end | end | ||
if | -- Überprüfung auf leere Parameter | ||
return "Keine | if frame.args[1] == nil then | ||
return "Keine Abfrageparameter gefunden." | |||
end | end | ||
-- Abfrage | -- Abfrage ausführen | ||
local | local queryResult = mw.smw.getQueryResult(frame.args) | ||
-- | -- Kein Ergebnis | ||
if queryResult == nil then | |||
return "Keine Ergebnisse gefunden." | return "Keine Ergebnisse gefunden." | ||
end | end | ||
-- | -- Rückgabe der kompletten Datenstruktur | ||
return "<pre>" .. mw.dumpObject(queryResult) .. "</pre>" | |||
return "<pre>" .. | |||
end | end | ||
Version vom 21. November 2024, 21:31 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Publikation/Buch/Doku erstellt werden
local smw = require('Module:SMW')
local getArgs = require('Module:Arguments').getArgs
local buch = {}
-- Funktion zur Extraktion der Gesamtbände aus der Serien-ID
function buch.getCompleteVolumes(frame)
if not mw.smw then
return "Semantic MediaWiki-Erweiterung nicht gefunden."
end
-- Überprüfung auf leere Parameter
if frame.args[1] == nil then
return "Keine Abfrageparameter gefunden."
end
-- Abfrage ausführen
local queryResult = mw.smw.getQueryResult(frame.args)
-- Kein Ergebnis
if queryResult == nil then
return "Keine Ergebnisse gefunden."
end
-- Rückgabe der kompletten Datenstruktur
return "<pre>" .. mw.dumpObject(queryResult) .. "</pre>"
end
-- Hauptfunktion für die Buchdarstellung
function buch.render(args, helper)
local seriesID = args["Hat Serie"] or ""
local band = args["Band"] or ""
-- **DEBUG** Serien-ID anzeigen
local debugOutput = "Serien-ID: " .. (seriesID ~= "" and seriesID or "Keine Serien-ID angegeben") .. "\n"
-- **DEBUG** Prüfen, ob buch.getCompleteVolumes aufgerufen wird
local completeVolumes = buch.getCompleteVolumes(seriesID)
debugOutput = debugOutput .. "Aufruf getCompleteVolumes mit Serien-ID: " .. seriesID .. "\n"
-- Ausgabe der Bände
local bandOutput = "Band " .. band
if completeVolumes and completeVolumes ~= "" then
bandOutput = bandOutput .. " von " .. completeVolumes
else
bandOutput = bandOutput .. " (Keine Gesamtbände gefunden)"
end
-- Ergebnis zurückgeben
return debugOutput .. "Ergebnis Band-Ausgabe: " .. bandOutput
end
return buch