(Die Seite wurde neu angelegt: „local manga = {} function manga.render(args, main) local output = '<table class="publikation manga">' -- Coverbild output = output .. '<tr><td colspan="2" style="text-align: center;">' .. main.getCoverImage(args["Coverbild"], "DefaultMangaCover.jpg") .. '</td></tr>' -- Titel output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. (args["Titel"] or "Unbekannt") .. ']]</td></tr>' -- Mangaka (Mehrfachwerte als…“) |
Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
local getArgs = require('Module:Arguments').getArgs | |||
local helper = require("Modul:Publikation/Helper") | |||
local related = require("Modul:Publikation/Related") | |||
local manga = {} | local manga = {} | ||
function manga.render(args | function manga.render(frame) | ||
local args = frame.args | |||
local output = '<table class="publikation manga">' | local output = '<table class="publikation manga">' | ||
-- Coverbild | -- Coverbild | ||
output = output .. '<tr><td colspan="2" style="text-align: center;">' .. | output = output .. '<tr><td colspan="2" style="text-align: center;">' .. helper.getCoverImage({cover = args["Coverbild"], defaultCover = "Library:Cover:DefaultMangaCover.webp"}) .. '</td></tr>' | ||
-- Titel | -- Titel | ||
output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. (args["Titel"] or "Unbekannt") .. ']]</td></tr>' | output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. (args["Titel"] or "Unbekannt") .. ']]</td></tr>' | ||
-- Mangaka (Mehrfachwerte | -- Mangaka (Mehrfachwerte) | ||
if args["Mangaka"] then | if args["Mangaka"] then | ||
output = output .. '<tr><td><strong>Mangaka</strong></td><td>' | output = output .. '<tr><td><strong>Mangaka</strong></td><td>' | ||
for | for artist in mw.text.gsplit(args["Mangaka"], ",") do | ||
output = output .. '[[Mangaka::' .. | output = output .. '[[Hat Mangaka::' .. mw.text.trim(artist) .. ']], ' | ||
end | end | ||
output = output:sub(1, -3) .. '</td></tr>' -- Entfernt das letzte Komma | output = output:sub(1, -3) .. '</td></tr>' -- Entfernt das letzte Komma | ||
end | end | ||
-- | -- Zeichenstudio | ||
output = output .. (args[" | output = output .. (args["Zeichenstudio"] and '<tr><td><strong>Zeichenstudio</strong></td><td>[[Zeichenstudio::' .. args["Zeichenstudio"] .. ']]</td></tr>' or "") | ||
-- | -- Kapitel | ||
output = output .. (args[" | output = output .. (args["Kapitel"] and '<tr><td><strong>Kapitel</strong></td><td>[[Kapitel::' .. args["Kapitel"] .. ']]</td></tr>' or "") | ||
-- | -- Band und Serie | ||
if args[" | if args["Band"] then | ||
output = output .. '<tr><td><strong> | local seriesID = args["SerienID"] or "" | ||
local seriesPageTitle = helper.getSeriesPageTitle({ args = { SerienID = seriesID } }) | |||
local completeVolumes = seriesPageTitle ~= "Keine Ergebnisse gefunden." and helper.getCompleteVolumesByTitle({ args = { seriesPageTitle, "Complete volumes" } }) or "Unbekannt" | |||
local bandText = args["Band"] .. ' von [[Hat Serie::' .. (args["Hat Serie"] or "") .. ']] (' .. completeVolumes .. ')' | |||
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 | end | ||
Zeile 43: | Zeile 46: | ||
output = output .. (args["Standort"] and '<tr><td><strong>Standort</strong></td><td>[[Standort::' .. args["Standort"] .. ']]</td></tr>' or "") | output = output .. (args["Standort"] and '<tr><td><strong>Standort</strong></td><td>[[Standort::' .. args["Standort"] .. ']]</td></tr>' or "") | ||
-- | -- Verlag | ||
output = output .. (args[" | output = output .. (args["Verlag"] and '<tr><td><strong>Verlag</strong></td><td>[[Verlag::' .. args["Verlag"] .. ']]</td></tr>' or "") | ||
-- 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 = helper.getIsbnLink({isbn = args["ISBN-10"], version = "ISBN-10"}) | |||
local isbn13 = helper.getIsbnLink({isbn = args["ISBN-13"], version = "ISBN-13"}) | |||
output = output .. '<tr><td><strong>ISBN</strong></td><td>' .. isbn10 .. (isbn10 ~= "" and isbn13 ~= "" and " / " or "") .. isbn13 .. '</td></tr>' | |||
end | |||
-- Preis | -- Preis | ||
output = output .. (args["Preis"] and '<tr><td><strong>Preis</strong></td><td>[[Preis::' .. args["Preis"] .. ']]</td></tr>' or "") | output = output .. (args["Preis"] and '<tr><td><strong>Preis</strong></td><td>[[Preis::' .. args["Preis"] .. ']]</td></tr>' or "") | ||
-- | -- Umfang | ||
output = output .. (args[" | output = output .. (args["Umfang"] and '<tr><td><strong>Umfang</strong></td><td>[[Umfang::' .. args["Umfang"] .. ']] Seiten</td></tr>' or "") | ||
-- Datensatz ID | |||
output = output .. (args["Datensatz ID"] and '<tr><td><strong>Datensatz ID</strong></td><td>[https://d-nb.info/' .. args["Datensatz ID"] .. ' ' .. args["Datensatz ID"] .. ']</td></tr>' or "") | |||
output = output .. '</table>' | output = output .. '</table>' | ||
-- Zusätzliche Kategorien | |||
output = output .. helper.addCategories({ | |||
"Alle Publikationen", | |||
"Mangas", | |||
args["Hat Serie"] and "Serie:" .. args["Hat Serie"] or nil | |||
}) | |||
return output | return output | ||
end | end | ||
return manga | return manga |
Version vom 24. November 2024, 23:41 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Publikation/Manga/Doku erstellt werden
local getArgs = require('Module:Arguments').getArgs
local helper = require("Modul:Publikation/Helper")
local related = require("Modul:Publikation/Related")
local manga = {}
function manga.render(frame)
local args = frame.args
local output = '<table class="publikation manga">'
-- Coverbild
output = output .. '<tr><td colspan="2" style="text-align: center;">' .. helper.getCoverImage({cover = args["Coverbild"], defaultCover = "Library:Cover:DefaultMangaCover.webp"}) .. '</td></tr>'
-- Titel
output = output .. '<tr><td><strong>Titel</strong></td><td>[[Hat Titel::' .. (args["Titel"] or "Unbekannt") .. ']]</td></tr>'
-- Mangaka (Mehrfachwerte)
if args["Mangaka"] then
output = output .. '<tr><td><strong>Mangaka</strong></td><td>'
for artist in mw.text.gsplit(args["Mangaka"], ",") do
output = output .. '[[Hat Mangaka::' .. mw.text.trim(artist) .. ']], '
end
output = output:sub(1, -3) .. '</td></tr>' -- Entfernt das letzte Komma
end
-- Zeichenstudio
output = output .. (args["Zeichenstudio"] and '<tr><td><strong>Zeichenstudio</strong></td><td>[[Zeichenstudio::' .. args["Zeichenstudio"] .. ']]</td></tr>' or "")
-- Kapitel
output = output .. (args["Kapitel"] and '<tr><td><strong>Kapitel</strong></td><td>[[Kapitel::' .. args["Kapitel"] .. ']]</td></tr>' or "")
-- Band und Serie
if args["Band"] then
local seriesID = args["SerienID"] or ""
local seriesPageTitle = helper.getSeriesPageTitle({ args = { SerienID = seriesID } })
local completeVolumes = seriesPageTitle ~= "Keine Ergebnisse gefunden." and helper.getCompleteVolumesByTitle({ args = { seriesPageTitle, "Complete volumes" } }) or "Unbekannt"
local bandText = args["Band"] .. ' von [[Hat Serie::' .. (args["Hat Serie"] or "") .. ']] (' .. completeVolumes .. ')'
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
-- 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 "")
-- Verlag
output = output .. (args["Verlag"] and '<tr><td><strong>Verlag</strong></td><td>[[Verlag::' .. args["Verlag"] .. ']]</td></tr>' or "")
-- 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 = helper.getIsbnLink({isbn = args["ISBN-10"], version = "ISBN-10"})
local isbn13 = helper.getIsbnLink({isbn = args["ISBN-13"], version = "ISBN-13"})
output = output .. '<tr><td><strong>ISBN</strong></td><td>' .. isbn10 .. (isbn10 ~= "" and isbn13 ~= "" and " / " or "") .. isbn13 .. '</td></tr>'
end
-- Preis
output = output .. (args["Preis"] and '<tr><td><strong>Preis</strong></td><td>[[Preis::' .. args["Preis"] .. ']]</td></tr>' or "")
-- Umfang
output = output .. (args["Umfang"] and '<tr><td><strong>Umfang</strong></td><td>[[Umfang::' .. args["Umfang"] .. ']] Seiten</td></tr>' or "")
-- Datensatz ID
output = output .. (args["Datensatz ID"] and '<tr><td><strong>Datensatz ID</strong></td><td>[https://d-nb.info/' .. args["Datensatz ID"] .. ' ' .. args["Datensatz ID"] .. ']</td></tr>' or "")
output = output .. '</table>'
-- Zusätzliche Kategorien
output = output .. helper.addCategories({
"Alle Publikationen",
"Mangas",
args["Hat Serie"] and "Serie:" .. args["Hat Serie"] or nil
})
return output
end
return manga