Module:IconNav
From MENACE Official Wiki
Documentation for this module may be created at Module:IconNav/doc
local p = {}
function p.main(frame)
local args = frame:getParent().args
local icons = {}
local links = {}
-- Collect all icon/link pairs
local i = 1
while args['icon' .. i] do
table.insert(icons, args['icon' .. i])
table.insert(links, args['link' .. i])
i = i + 1
end
-- Get header parameters
local headerText = args['header']
local leftImage = args['leftImage']
local rightImage = args['rightImage']
-- Build icon row
local iconRow = '| '
for j, icon in ipairs(icons) do
if j > 1 then iconRow = iconRow .. ' || ' end
iconRow = iconRow .. '[[File:' .. icon .. '.png|link=' .. links[j] .. '|124px]]'
end
-- Build link row
local linkRow = '| '
for j, link in ipairs(links) do
if j > 1 then linkRow = linkRow .. ' || ' end
linkRow = linkRow .. '[[' .. link .. ']]'
end
local result = ''
-- Only include header section if headerText or images are provided
if headerText or leftImage or rightImage then
result = result .. '{| class="gridBG" align="center" style="background-color:#; width: 95%; height: 50px; border: 1px solid white; color: white; border-left: none; border-right: none; border-top: none;"\n'
result = result .. '| class="hides hidem" style="font-size: 125%; text-align: center;" | <center><big>[[File:' .. (leftImage or '') .. '|15px|link=]] \'\'\'' .. (headerText or '') .. '\'\'\' [[File:' .. (rightImage or '') .. '|15px|link=]]</big></center>\n'
result = result .. '|}\n'
end
result = result .. '<center>\n'
result = result .. '{| style="width: 95%; text-align: center;"\n'
result = result .. '|-\n'
result = result .. '| style="height: 20px;" |\n'
result = result .. '|-\n'
result = result .. iconRow .. '\n'
result = result .. '|-\n'
result = result .. linkRow .. '\n'
result = result .. '|}\n'
result = result .. '</center>'
return result
end
return p


