이 모듈에 대한 설명문서는 모듈:Ensemblestars/설명문서에서 만들 수 있습니다
local p = {}
-------------------------------------
local function _card(args, frame)
local returnText, images, showBoth = '', {}
if args['개화'] == '전' then
images[#images+1] = '개화 전'
elseif args['개화'] == '후' then
images[#images+1] = '개화 후'
elseif args['개화'] == '전후' then
images[#images+1] = '개화 전'
images[#images+1] = '개화 후'
else
images[#images+1] = '개화 전'
end
returnText = returnText .. '{| style="display:inline-block;"\n'
local width = (args['크기'] == '작게' and 80 or 160), 0
returnText = returnText .. '|-'
for i, v in ipairs(images) do
returnText = returnText .. '\n| style="border-width:0;width:'..width..'px;height:'..(width/4*5)..'px" | '
local file = mw.title.new('파일:'..args[1]..' '..v..'.png')
if file.exists then
returnText = returnText .. '[[파일:'..args[1]..' '..v..'.png|'..width..'x'..(width/4*5)..'픽셀'
local link = args['이미지 링크']
if link ~= nil then
returnText = returnText .. '|링크='..args['이미지 링크']
end
returnText = returnText .. ']]'
else
local msg = args['크기'] == '작게' and '이미지 없음' or '이미지가 없습니다. 이미지를 업로드해 주세요.'
returnText = returnText .. '[[파일:'..args[1]..' '..v..'.png|'..msg..']]'
end
end
if args['크기'] ~= '작게' then
returnText = returnText .. '\n|-\n| style="border-width:0;width:160px;text-align:center;" '
if #images == 2 then
returnText = returnText .. 'colspan=2'
end
returnText = returnText .. '|[['..args[1]..']]'
end
returnText = returnText .. '\n|}'
return returnText
end
-------------------------------------
-- frame 객체가 틀에서 호출되어 생긴 frame인지 바로 모듈이 호출되어 생긴 frame인지와 무관하게 args를 찾습니다.
-- @param frame 호출되면서 자동으로 만들어진 frame 객체.
-- @return args 호출되면서 전달받은 전달인자.
-------------------------------------
local function safeArgs(frame)
if frame.args[1] ~= nil then --frame은 metatable이라 next(frame.args)가 안 된다고 하여 이리 되었습니다.
return frame.args
else
return frame:getParent().args
end
end
function p.card(frame)
return _card(safeArgs(frame), frame)
end
return p