„Modul:Infobox“ – Versionsunterschied
Erscheinungsbild
[gesichtete Version] | [gesichtete Version] |
Inhalt gelöscht Inhalt hinzugefügt
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 6: | Zeile 6: | ||
local index = {} |
local index = {} |
||
local i = 0 |
local i = 0 |
||
for datum = 1, |
for datum = 1, 80 do i = i + 1 |
||
if args['name'..i] or args[' |
if args['name'..i] or args['zweite'..i] or args['unter'..i] or args['datei'..i] or args['zeile'..i] then table.insert(index, i) end |
||
if args['dritte'..i] then dritte = true end |
if args['dritte'..i] then dritte = true end |
||
if args['vierte'..i] then vierte = true end |
if args['vierte'..i] then vierte = true end |
||
end |
end |
||
cspan = vierte and 4 or dritte and 3 or 2 |
|||
local root = mw.html.create('table'):addClass('infobox box') |
local root = mw.html.create('table'):addClass('infobox box') |
||
Zeile 22: | Zeile 23: | ||
:css('min-width', '20em') |
:css('min-width', '20em') |
||
:css('font-size', '106%') |
:css('font-size', '106%') |
||
:attr('colspan', |
:attr('colspan', cspan) |
||
row = root:tag('tr') |
row = root:tag('tr') |
||
Zeile 28: | Zeile 29: | ||
for k, v in pairs(index) do |
for k, v in pairs(index) do |
||
row = root:tag('tr') |
row = root:tag('tr') |
||
if args['name'..v] or args[' |
if args['name'..v] or args['zweite'..v] or args['unter'..v] or args['datei'..v] or args['zeile'..v] then |
||
if args['unter |
if args['unter'..v] then |
||
row:tag('td') |
row:tag('td') |
||
:wikitext(args['unter |
:wikitext(args['unter'..v]) |
||
:css('font-weight', |
:css('font-weight', 'bold') |
||
:css('text-align', 'center') |
:css('text-align', 'center') |
||
:css('background-color', |
:css('background-color', '#EBEBFF') |
||
:attr('colspan', |
:attr('colspan', cspan) |
||
⚫ | |||
row:tag('td') |
|||
:wikitext(args['datei'..v] or args['zeile'..v]) |
|||
⚫ | |||
⚫ | |||
:attr('colspan', cspan) |
|||
elseif args['name'..v] then |
|||
row:tag('td') |
|||
:wikitext(args['name'..v]) |
|||
:css('font-weight', 'bold') |
|||
:css('background-color', '#F2F2F4') |
|||
else |
else |
||
row:tag('td') |
row:tag('td') |
||
:css('background-color', '#F8F9FA') |
|||
⚫ | |||
⚫ | |||
⚫ | |||
end |
end |
||
end |
end |
||
Zeile 48: | Zeile 58: | ||
row:tag('td') |
row:tag('td') |
||
:wikitext(args['zweite'..v]) |
:wikitext(args['zweite'..v]) |
||
:css('text-align', |
:css('text-align', 'center') |
||
row:tag('td') |
row:tag('td') |
||
:wikitext(args['dritte'..v]) |
:wikitext(args['dritte'..v]) |
||
:css('text-align', |
:css('text-align', 'center') |
||
if args['vierte'..v] then |
if args['vierte'..v] then |
||
row:tag('td') |
row:tag('td') |
||
:wikitext(args['vierte'..v]) |
:wikitext(args['vierte'..v]) |
||
:css('text-align', |
:css('text-align', 'center') |
||
end |
end |
||
else |
else |
Aktuelle Version vom 12. März 2025, 22:06 Uhr
Die Dokumentation für dieses Modul kann unter Modul:Infobox/Doku erstellt werden
local p = {}
local getArgs = require('Modul:Arguments').getArgs
function p.tab(frame)
local args = getArgs(frame)
local index = {}
local i = 0
for datum = 1, 80 do i = i + 1
if args['name'..i] or args['zweite'..i] or args['unter'..i] or args['datei'..i] or args['zeile'..i] then table.insert(index, i) end
if args['dritte'..i] then dritte = true end
if args['vierte'..i] then vierte = true end
end
cspan = vierte and 4 or dritte and 3 or 2
local root = mw.html.create('table'):addClass('infobox box')
row = root:tag('tr')
row:tag('td')
:wikitext(args['titel'] or 'Titel')
:css('background-color', '#CCF')
:css('text-align', 'center')
:css('font-weight', 'bold')
:css('min-width', '20em')
:css('font-size', '106%')
:attr('colspan', cspan)
row = root:tag('tr')
for k, v in pairs(index) do
row = root:tag('tr')
if args['name'..v] or args['zweite'..v] or args['unter'..v] or args['datei'..v] or args['zeile'..v] then
if args['unter'..v] then
row:tag('td')
:wikitext(args['unter'..v])
:css('font-weight', 'bold')
:css('text-align', 'center')
:css('background-color', '#EBEBFF')
:attr('colspan', cspan)
elseif args['datei'..v] or args['zeile'..v] then
row:tag('td')
:wikitext(args['datei'..v] or args['zeile'..v])
:css('text-align', args['datei'..v] and 'center' or 'left')
:css('background-color', '#F8F9FA')
:attr('colspan', cspan)
elseif args['name'..v] then
row:tag('td')
:wikitext(args['name'..v])
:css('font-weight', 'bold')
:css('background-color', '#F2F2F4')
else
row:tag('td')
:css('background-color', '#F8F9FA')
end
end
if args['zweite'..v] then
if dritte then
if args['dritte'..v] then
row:tag('td')
:wikitext(args['zweite'..v])
:css('text-align', 'center')
row:tag('td')
:wikitext(args['dritte'..v])
:css('text-align', 'center')
if args['vierte'..v] then
row:tag('td')
:wikitext(args['vierte'..v])
:css('text-align', 'center')
end
else
row:tag('td')
:wikitext(args['zweite'..v])
:attr('colspan', vierte and 3 or 2)
end
else
row:tag('td')
:wikitext(args['zweite'..v])
end
end
end
return root
end
return p