imported>Mr. Stradivarius get the args with pairs so that we don't fetch args.size and args.class from the frame object every time |
imported>Mr. Stradivarius m Protected Module:Icon: High-risk Lua module ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite)) |
(차이 없음)
| |
2015년 1월 23일 (금) 19:26 판
이 모듈에 대한 설명문서는 모듈:Icon/설명문서에서 만들 수 있습니다
-- This module implements [[Template:Icon]].
local data = mw.loadData('Module:Icon/data')
local p = {}
function p._main(args)
local code = args.class or args[1]
local iconData
if code then
code = code:match('^%s*(.-)%s*$'):lower() -- trim whitespace and put in lower case
iconData = data[code]
end
if not iconData then
iconData = data._DEFAULT
end
return string.format(
'[[File:%s%s|%s|link=]]',
iconData.image,
iconData.tooltip and '|' .. iconData.tooltip or '',
args.size or '16x16px'
)
end
function p.main(frame)
local args = {}
for k, v in pairs(frame:getParent().args) do
args[k] = v
end
return p._main(args)
end
return p