FANDOM


local p = {}
 
local getArgs
 
function p.main(frame)
	if not getArgs then
		getArgs = require('Module:Arguments').getArgs
	end
	local args = getArgs(frame, {wrappers = 'แม่แบบ:บาเบล'})
 
	local table_tag = mw.html.create('table')
				:addClass('userboxes')
	local table_styling = {
		{'float', args.align or 'right', ''},
		{'margin-left', args.left or '1', 'em'},
		{'margin-bottom', args.bottom or '0', 'em'},
		{'width', args.width or '248', 'px'},
		{'clear', args.align or 'right', ''},
		{'color', args.textcolor or '#000000', ''}
	}
 
	for _,v in ipairs(table_styling) do
		table_tag:css(v[1],v[2]..v[3])
	end
 
	local bordercolor = args.bordercolor or '#99B3FF'
	local solid = args.solid or '1'
 
	table_tag:css('border',bordercolor..' solid '..solid..'px')
 
	if args.shadow and string.lower(args.shadow) == 'yes' then
		table_tag:css('box-shadow','0 2px 4px rgb(0,0,0,0.2)')
				:css('-mox-box-shadow','0 2px 4px rgb(0,0,0,0.2)')
				:css('-webkit-box-shadow','0 2px 4px rgb(0,0,0,0.2)')
	end
 
	local extracss = args['extra-css'] or ''
 
	table_tag:cssText(extracss)
 
	local color = args.color or 'inherit'
	local row1 = mw.html.create('tr')
	local row2 = mw.html.create('tr')
	local row3 = mw.html.create('tr')
	local header = args.header or '[[ประชาสังเคราะห์:บาเบล]]'
	local footer = args.footer or '[[:หมวดหมู่:ผู้ใช้แบ่งตามภาษา|ผู้ใช้ตามภาษา]]'
 
	local footer_td = mw.html.create('td')
			:css('background-color',color)
			:css('text-align','center')
			:attr('colspan','10')
			:wikitext(footer)
 
	local header_th = mw.html.create('th')
			:css('background-color',color)
			:css('text-align','center')
			:attr('colspan','10')
			:wikitext(header)
 
	row1:node(header_th)
	row3:node(footer_td)
 
	local body_cells = mw.html.create('td')
				:css('vertical-align', 'middle !important')
 
	local userboxes
 
	if args[1] and args[1]:find('%S') then
		userboxes = frame:preprocess('{{User '..args[1]..'}}')
	else
		userboxes = args.noboxestext or "''คุณยังไม่ได้ตั้งค่าภาษาใด ๆ โปรดดูหน้าช่วยเหลือที่ [[แม่แบบ:บาเบล/doc]]''"
	end
 
	args[1] = ''
 
	local unclosed_td = false
	for i, v in ipairs( args ) do
		local boxtext
		if v:find('%S') and v ~= '!' then
			boxtext = frame:preprocess('{{User '..v..'}}')
			userboxes = userboxes..boxtext
		elseif v and v == '!' then
			userboxes = userboxes..'</td>\n<td>'
			unclosed_td = true
		end
	end
 
	if args['special-boxes'] then
		userboxes = userboxes..args['special-boxes']
	end
 
	if unclosed_td then
		userboxes = userboxes..'</td>'
	end
	body_cells:wikitext(userboxes)
 
	row2:node(body_cells)
 
	table_tag:node(row1)
			:node(row2)
			:node(row3)
 
	return tostring(table_tag)
end
 
return p

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on FANDOM

Random Wiki