Modul:Infobox

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['wert'..i] or args['farbe'..i] or args['unter'..i] or args['datei'..i] then table.insert(index, i) end
		if args['wertzwei'..i] then wertzwei = true end
		if args['wertdrei'..i] then wertdrei = true end
	end
	cspan = wertdrei and 4 or wertzwei and 3 or 2
	
	local root = mw.html.create('table'):css('clear', 'left'):css('float', 'right'):css('font-size', '96%'):css('border', '0.1px solid silver'):css('border-collapse', 'collapse'):css('line-height', '1.5em'):css('min-width', '20em')
	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('padding-top', '0.2em')
		:css('padding-bottom', '0.2em')
		:css('font-size', '110%')
		:attr('colspan', cspan)	

	for k, v in pairs(index) do
		text = args['wertzwei'..v] and 'center' or 'left' 
		if args['wert'..v] or args['farbe'..v] or args['unter'..v] or args['datei'..v] then
			row = root:tag('tr')
			if args['unter'..v] then
				row:tag('td')
					:wikitext(args['unter'..v])
					:css('font-weight', 'bold')
					:css('text-align', 'center')
					:css('background-color', '#EBEBFF')
					:css('padding-top', '0.3em')
					:css('padding-bottom', '0.3em')
					:css('padding-left', '0.5em')
					:css('padding-right', '0.5em')
					:attr('colspan', cspan)
			elseif args['datei'..v] then
				row:tag('td')
					:wikitext(args['datei'..v])
					:css('text-align', 'center')
					:css('vertical-align', 'top')
					:attr('colspan', cspan)
			elseif args['farbe'..v] then
				row:tag('td')
					:css('background-color', 'rgb(170 170 170 / 0.1)')
				row:tag('td')
					:wikitext('<div style="background-color:#'..args['farbe'..v]..';height:0.8em;width:100%></div>')
				if args['farbezwei'..v] then
					row:tag('td')
						:wikitext('<div style="background-color:#'..args['farbezwei'..v]..';height:0.8em;width:100%></div>')
					if args['farbedrei'..v] then
						row:tag('td')
							:wikitext('<div style="background-color:#'..args['farbedrei'..v]..';height:0.8em;width:100%></div>')
					end
				end
			else
				row:tag('td')
					:wikitext(args['name'..v] or '')
					:css('font-weight', 'bold')
					:css('background-color', 'rgb(170 170 170 / 0.1)')
					:css('color', 'var(--color-base, #202122)')
					:css('vertical-align', 'top')
					:css('padding-top', '0.3em')
					:css('padding-bottom', '0.3em')
					:css('padding-left', '0.3em')
					:css('padding-right', '0.8em')
					:css('border-top', '0.1px solid #E6E6E6')
			end
		end
		if args['wert'..v] then
			if wertzwei then
				if args['wertzwei'..v] then
					row:tag('td')
						:wikitext(args['wert'..v])
						:css('text-align', text)
						:css('padding-top', '0.3em')
						:css('padding-bottom', '0.3em')
						:css('padding-left', '0.2em')
						:css('padding-right', '0.2em')
						:css('border-top', '0.1px solid #E6E6E6')
						:css('vertical-align', 'top')
						:css('max-width', args['wertdrei'..v] and '112px' or '135px')
					row:tag('td')
						:wikitext(args['wertzwei'..v])
						:css('text-align', text)	
						:css('padding-top', '0.3em')
						:css('padding-bottom', '0.3em')
						:css('padding-left', '0.2em')
						:css('padding-right', '0.2em')
						:css('border-top', '0.1px solid #E6E6E6')
						:css('vertical-align', 'top')
						:css('max-width', args['wertdrei'..v] and '112px' or '135px')
					if args['wertdrei'..v]  then
						row:tag('td')
							:wikitext(args['wertdrei'..v])
							:css('text-align', text)
							:css('padding-top', '0.3em')
							:css('padding-bottom', '0.3em')
							:css('padding-left', '0.2em')
							:css('padding-right', '0.2em')
							:css('vertical-align', 'top')
							:css('border-top', '0.1px solid #E6E6E6')
							:css('max-width', '112px')
					end
				else
					row:tag('td')
						:wikitext(args['wert'..v])
						:css('text-align', text)						
						:css('padding-top', '0.3em')
						:css('padding-bottom', '0.3em')
						:css('padding-left', '0.2em')
						:css('padding-right', '0.2em')
						:css('border-top', '0.1px solid #E6E6E6')
						:css('max-width', '135px')
						:css('vertical-align', 'top')
						:attr('colspan', wertdrei and 3 or 2)
				end
			else
				row:tag('td')
					:wikitext(args['wert'..v])
						:css('text-align', text)
						:css('padding-top', '0.3em')
						:css('padding-bottom', '0.3em')
						:css('padding-left', '0.3em')
						:css('padding-right', '0.3em')
						:css('vertical-align', 'top')
						:css('border-top', '0.1px solid #E6E6E6')
						:css('max-width', '320px')
				end
			end
		end
	return root
end

return p

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.