Zuletzt bearbeitet vor einem Tag
von Xineohp1506

Publikation

Die Dokumentation für dieses Modul kann unter Modul:Publikation/Doku erstellt werden

local p = {}

-- Funktion zur Einbindung von TemplateStyles, einmalig pro Aufruf
function p.templateStyle(frame, src)
    if frame:extensionTag('templatestyles', '', { src = src }) then
        return frame:extensionTag('templatestyles', '', { src = src })
    end
end

-- Hauptfunktion zum Rendern der Publikation, abhängig vom Typ
function p.generatePublication(frame)
    -- Einmalige Einbindung der TemplateStyles-Datei
    p.templateStyle(frame, 'Vorlage:Publikation/styles.css')

    local args = frame.args
    local typ = args["Typ"] or "Buch" -- Standardtyp: Buch
    local result = ""

    -- Wähle das richtige Submodul je nach Publikationstyp
    if typ == "Buch" then
        local buchModule = require("Modul:Publikation/Buch")
        result = buchModule.render(args, p)
    elseif typ == "Zeitschrift" then
        local zeitschriftModule = require("Modul:Publikation/Zeitschrift")
        result = zeitschriftModule.render(args, p)
    elseif typ == "Artikel" then
        local artikelModule = require("Modul:Publikation/Artikel")
        result = artikelModule.render(args, p)
    elseif typ == "Manga" then
        local mangaModule = require("Modul:Publikation/Manga")
        result = mangaModule.render(args, p)
    else
        result = "Unbekannter Publikationstyp"
    end

    return result
end

return p