모듈:글상자

설명문서 [편집] [역사] [새로고침]
test
test
연습장이나 사용자 문서에서 틀의 사용이나 수정을 연습할 수 있습니다.
분류는 /설명문서에 넣어주세요.

local p = {}
local getArgs = require('Module:Arguments').getArgs
local calcColor = require('Module:text').calcColor_

function p.main( frame )
	local args = getArgs(frame)
	local style = args['전체모양'] or args['style'] or ''
	local tstyle = args['제목모양'] or args['tstyle'] or ''
	local cstyle = args['내용모양'] or args['cstyle'] or ''
	local cclass = args['내용속성'] or args['cclass'] or ''
	local title = args[1] or args['제목']
	local cont = args[2] or args['내용']
	local background = args[3] or args['배경색'] or '#4188f1'
	
	if string.len(background) == 4 then
		background = '#'..string.rep(string.sub(background, 2, 2), 2)..
		string.rep(string.sub(background, 3, 3), 2)..
		string.rep(string.sub(background, 4, 4), 2)
	end
	
	local backgruond2 = args['배경색2'] or background..'2b'
	local color = args[4] or args['글자색'] or calcColor(background)
	
	local div = mw.html.create('div')
	div
		:cssText(style)
		:addClass('text-box')
		:css('background', background)
		:tag('div')
			:css('padding', '0 1em')
			:css('color', color)
			:css('line-height', '2em')
			:cssText(tstyle)
			:addClass('title')
			:wikitext(title)
	div
		:tag('div')
			:css('background', '#ffffff94')
			:css('padding', '1em')
			:css('border-style', 'solid')
			:css('border-width', '0')
			:cssText(cstyle)
			:addClass(cclass)
			:wikitext(cont)
			
	return div
end

return p