Modul:Trainer-Info: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| (3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 59: | Zeile 59: | ||
end | end | ||
-- Bild | |||
-- Bild | |||
if bild ~= "" then | |||
local bildzeile = box | |||
:tag("tr") | |||
:tag("td") | |||
:attr("colspan", "2") | |||
:css("text-align", "center") | |||
bildzeile | |||
:wikitext('[[Datei:' .. bild .. '|200px]]') | |||
if bildbeschreibung ~= "" then | |||
bildzeile | |||
:tag("div") | |||
:css("font-size", "90%") | |||
:wikitext(bildbeschreibung) | |||
:done() | |||
end | |||
bildzeile | |||
:done() | |||
:done() | |||
end | |||
-- Alle Felder automatisch hinzufügen | -- Alle Felder automatisch hinzufügen | ||
for _, field in ipairs(fields) do | for _, field in ipairs(fields) do | ||
Aktuelle Version vom 9. September 2026, 16:58 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Trainer-Info/Doku erstellt werden
local p = {}
-- Erstellt eine Zeile der Infobox
local function addRow(box, label, value)
if value and value ~= "" then
box
:tag("tr")
:tag("th")
:wikitext(label)
:done()
:tag("td")
:wikitext(value)
:done()
:done()
end
end
-- Liste der möglichen Felder
local fields = {
{"name", "Name"},
{"tenure", "Amtszeiten"},
{"pps", "Punkteschnitt Gesamt"},
{"days_in_office", "Amtszeit Gesamt in Tagen"},
{"games", "Pflichtspiele Gesamt"},
}
-- Hauptfunktion
function p.main(frame)
-- Parameter der Vorlage holen
local args = frame:getParent().args
-- Grundparameter
local titel = args.titel or ""
local bild = args.bild or ""
local bildbeschreibung = args.bildbeschreibung or ""
-- Tabelle erstellen
local box = mw.html.create("table")
:addClass("infobox")
-- Titel
if titel ~= "" then
box
:tag("caption")
:wikitext(titel)
:done()
end
-- Bild
-- Bild
if bild ~= "" then
local bildzeile = box
:tag("tr")
:tag("td")
:attr("colspan", "2")
:css("text-align", "center")
bildzeile
:wikitext('[[Datei:' .. bild .. '|200px]]')
if bildbeschreibung ~= "" then
bildzeile
:tag("div")
:css("font-size", "90%")
:wikitext(bildbeschreibung)
:done()
end
bildzeile
:done()
:done()
end
-- Alle Felder automatisch hinzufügen
for _, field in ipairs(fields) do
local parameter = field[1]
local label = field[2]
local value = args[parameter]
addRow(box, label, value)
end
-- HTML zurückgeben
return tostring(box)
end
return p