Die Dokumentation für dieses Modul kann unter Modul:Publikation/Buch/Doku erstellt werden
local buch = {}
function buch.render(args, main)
local output = '<table class="publikation buch">'
-- Coverbild
output = output .. '<tr><td colspan="2" style="text-align: center;">' .. main.getCoverImage(args["Coverbild"], "DefaultBuchCover.jpg") .. '</td></tr>'
-- Titel
output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. (args["Titel"] or "Unbekannt") .. ']]</td></tr>'
-- Autoren (Mehrfachwerte als Liste)
if args["Autor"] then
output = output .. '<tr><td><strong>Autor(en)</strong></td><td>'
for author in mw.text.gsplit(args["Autor"], ",") do
output = output .. '[[Hat Autor::' .. author .. ']], '
end
output = output:sub(1, -3) .. '</td></tr>' -- Entfernt das letzte Komma
end
-- Verlag
output = output .. (args["Verlag"] and '<tr><td><strong>Verlag</strong></td><td>[[Verlag::' .. args["Verlag"] .. ']]</td></tr>' or "")
-- Band und Serie
if args["Band"] then
local bandText = args["Band"]
if args["Hat Serie"] then
bandText = bandText .. ' von [[Hat Serie::' .. args["Hat Serie"] .. ']]'
end
output = output .. '<tr><td><strong>Band</strong></td><td>' .. bandText .. '</td></tr>'
elseif args["Hat Serie"] then
output = output .. '<tr><td><strong>Serie</strong></td><td>[[Hat Serie::' .. args["Hat Serie"] .. ']]</td></tr>'
end
-- Erscheinungsjahr
output = output .. (args["Erscheinungsjahr"] and '<tr><td><strong>Erscheinungsjahr</strong></td><td>[[Erscheinungsjahr::' .. args["Erscheinungsjahr"] .. ']]</td></tr>' or "")
-- ISBN
if args["ISBN-10"] or args["ISBN-13"] then
local isbn10 = main.getIsbnLink(args["ISBN-10"], "ISBN-10")
local isbn13 = main.getIsbnLink(args["ISBN-13"], "ISBN-13")
output = output .. '<tr><td><strong>ISBN</strong></td><td>' .. isbn10 .. (isbn10 ~= "" and isbn13 ~= "" and " / " or "") .. isbn13 .. '</td></tr>'
end
-- Sprache
output = output .. (args["Sprache"] and '<tr><td><strong>Sprache</strong></td><td>[[Sprache::' .. args["Sprache"] .. ']]</td></tr>' or "")
-- Standort
output = output .. (args["Standort"] and '<tr><td><strong>Standort</strong></td><td>[[Standort::' .. args["Standort"] .. ']]</td></tr>' or "")
-- Umfang (Seitenanzahl)
output = output .. (args["Umfang"] and '<tr><td><strong>Umfang</strong></td><td>[[Umfang::' .. args["Umfang"] .. ']] Seiten</td></tr>' or "")
-- Preis
output = output .. (args["Preis"] and '<tr><td><strong>Preis</strong></td><td>[[Preis::' .. args["Preis"] .. ']]</td></tr>' or "")
-- Inhaltszusammenfassung
output = output .. (args["Inhaltszusammenfassung"] and '<tr><td><strong>Inhaltszusammenfassung</strong></td><td>' .. args["Inhaltszusammenfassung"] .. '</td></tr>' or "")
output = output .. '</table>'
-- Semantische Daten setzen
output = output .. "\n{{#set:"
output = output .. "\n | Hat Titel=" .. (args["Titel"] or "Unbekannt")
if args["Autor"] then
for author in mw.text.gsplit(args["Autor"], ",") do
output = output .. "\n | Hat Autor=" .. author
end
end
if args["Hat Serie"] then
output = output .. "\n | Hat Serie=" .. args["Hat Serie"]
end
if args["Band"] then
output = output .. "\n | Band=" .. args["Band"]
end
if args["Verlag"] then
output = output .. "\n | Verlag=" .. args["Verlag"]
end
if args["Erscheinungsjahr"] then
output = output .. "\n | Erscheinungsjahr=" .. args["Erscheinungsjahr"]
end
if args["Sprache"] then
output = output .. "\n | Sprache=" .. args["Sprache"]
end
if args["Standort"] then
output = output .. "\n | Standort=" .. args["Standort"]
end
if args["Umfang"] then
output = output .. "\n | Umfang=" .. args["Umfang"]
end
if args["Preis"] then
output = output .. "\n | Preis=" .. args["Preis"]
end
output = output .. "\n}}"
return output
end
return buch