Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
local p = {} | local p = {} | ||
-- Funktion zur Einbindung von TemplateStyles | |||
function p.templateStyle(frame, src) | |||
return frame:extensionTag('templatestyles', '', { src = src }) | |||
end | |||
-- Hilfsfunktion für das Standardbild | -- Hilfsfunktion für das Standardbild | ||
Zeile 14: | Zeile 19: | ||
-- Hauptfunktion zum Rendern der Publikation, abhängig vom Typ | -- Hauptfunktion zum Rendern der Publikation, abhängig vom Typ | ||
function p.generatePublication(frame) | function p.generatePublication(frame) | ||
-- TemplateStyles einbinden | |||
p.templateStyle(frame, 'Vorlage:Publikation/styles.css') | |||
local args = frame.args | local args = frame.args | ||
local typ = args["Typ"] or "Buch" -- Standardtyp: Buch | local typ = args["Typ"] or "Buch" -- Standardtyp: Buch |
Version vom 14. November 2024, 23:54 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Publikation/Doku erstellt werden
local p = {}
-- Funktion zur Einbindung von TemplateStyles
function p.templateStyle(frame, src)
return frame:extensionTag('templatestyles', '', { src = src })
end
-- Hilfsfunktion für das Standardbild
function p.getCoverImage(cover, defaultCover)
return cover and cover ~= "" and '[[File:' .. cover .. '|200px]]' or '[[File:' .. defaultCover .. '|200px]]'
end
-- Hilfsfunktion für ISBN-Links
function p.getIsbnLink(isbn, version)
local baseUrl = "https://www.mediawiki.org/wiki/Special:BookSources/"
return isbn and isbn ~= "" and '[[' .. baseUrl .. isbn .. '|' .. isbn .. ' (' .. version .. ')]]' or ""
end
-- Hauptfunktion zum Rendern der Publikation, abhängig vom Typ
function p.generatePublication(frame)
-- TemplateStyles einbinden
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