Die Dokumentation für dieses Modul kann unter Modul:Publikation/Buch/Doku erstellt werden
local buch = {}
local helper = require("Modul:Publikation/SerieHelper")
local getArgs = require('Module:Arguments').getArgs
function buch.render(frame)
-- Argumente aus dem Frame extrahieren
local args = frame.args
local seriesID = args["SerienID"]
local band = args["Band"] or "Unbekannt"
local seriesName = args["Hat Serie"] or "Unbekannte Serie"
-- Überprüfen, ob eine Serien-ID angegeben ist
if not seriesID then
return "Fehler: Serien-ID nicht angegeben."
end
-- Serien-Seite abrufen
local seriesQuery = "[[SerienID::" .. seriesID .. "]]"
local seriesPageTitle = helper.getSeriesPageTitle({ args = { seriesQuery } })
if seriesPageTitle == "Keine Ergebnisse gefunden." then
return "Fehler: Serien-Seite konnte nicht abgerufen werden."
end
-- Gesamtbände abrufen
local completeVolumes = helper.getCompleteVolumesByTitle({ args = { seriesPageTitle, "Complete volumes" } })
if completeVolumes == "Keine Ergebnisse gefunden." then
completeVolumes = "Unbekannt"
end
-- Serien-Link erstellen
local seriesLink = '[[' .. seriesPageTitle .. '|' .. seriesName .. ']]'
-- Ausgabeformat
return string.format(
"Band %s von %s (%s)",
band,
completeVolumes,
seriesLink
)
end
return buch