Zuletzt bearbeitet vor 9 Stunden
von Xineohp1506

Buch

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(args)
    -- Argumente prüfen und debuggen
    if not args then
        return "Fehler: Keine Argumente übergeben."
    end

    -- Debugging: Eingehende Argumente anzeigen
    mw.log("Eingehende Argumente:")
    mw.logObject(args)

    -- Serien-ID abrufen
    local seriesID = args["SerienID"]
    if not seriesID or seriesID == "" then
        return "Fehler: Serien-ID nicht angegeben."
    end

    -- Debugging: Zeige die Serien-ID
    mw.log("Verwendete Serien-ID: " .. seriesID)

    -- Serien-Seitentitel abrufen
    local seriesQuery = "[[SerienID::" .. seriesID .. "]]"
    local seriesPageTitle = helper.getSeriesPageTitle({ args = { seriesQuery } })
    
    -- Debugging: Überprüfen, ob die Serien-Seite gefunden wurde
    if seriesPageTitle == "Keine Ergebnisse gefunden." then
        return "Fehler: Serien-Seite konnte nicht abgerufen werden. Query: " .. seriesQuery
    end

    -- Gesamtbände abrufen
    local completeVolumes = helper.getCompleteVolumesByTitle(seriesPageTitle, "Complete volumes")
    if completeVolumes == "Keine Ergebnisse gefunden." then
        completeVolumes = "Unbekannt"
    end

    -- Serien-Link erstellen
    local seriesLink = '[[' .. seriesPageTitle .. '|' .. (args["Hat Serie"] or "Serie") .. ']]'

    -- Ausgabe der Band-Informationen
    local band = args["Band"] or "Kein Band angegeben."
    local bandInfo = "Band " .. band .. " von " .. completeVolumes .. " (" .. seriesLink .. ")"

    -- Debugging: Gebe alle wichtigen Informationen aus
    return "Debugging-Daten:\n"
        .. "Serien-ID: " .. seriesID .. "\n"
        .. "Query: " .. seriesQuery .. "\n"
        .. "Serien-Seitentitel: " .. seriesPageTitle .. "\n"
        .. "Gesamtbände: " .. completeVolumes .. "\n"
        .. "Ausgabe: " .. bandInfo
end

return buch