Module:Icon: Difference between revisions
Content deleted Content added
Johnrdorazio (talk | contribs) m 1 revision imported |
suppress links for modules where the "link" field in the data table is false |
||
Line 1: | Line 1: | ||
-- This module implements [[Template:Icon]]. |
-- This module implements [[Template:Icon]]. |
||
require("Module:No globals") |
|||
⚫ | |||
⚫ | |||
local p = {} |
local p = {} |
||
function p._main(args) |
function p._main(args, data) |
||
data = data or mw.loadData(DATA_MODULE) |
|||
local code = args.class or args[1] |
local code = args.class or args[1] |
||
local iconData |
local iconData |
||
Line 16: | Line 18: | ||
end |
end |
||
return string.format( |
return string.format( |
||
'[[File:%s%s|%s| |
'[[File:%s%s%s|%s|class=noviewer]]', |
||
iconData.image, |
iconData.image, |
||
iconData.tooltip and '|' .. iconData.tooltip or '', |
iconData.tooltip and '|' .. iconData.tooltip or '', |
||
iconData.link == false and '|link=' or '', |
|||
args.size or '16x16px' |
args.size or '16x16px' |
||
) |
) |
Revision as of 08:14, August 29, 2021
Documentation for this module may be created at Module:Icon/doc
-- This module implements [[Template:Icon]].
require("Module:No globals")
local DATA_MODULE = 'Module:Icon/data'
local p = {}
function p._main(args, data)
data = data or mw.loadData(DATA_MODULE)
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|%s|class=noviewer]]',
iconData.image,
iconData.tooltip and '|' .. iconData.tooltip or '',
iconData.link == false and '|link=' 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