Module:Flaglist: Difference between revisions
Appearance
Content deleted Content added
Rounding |
Splitting function |
||
Line 3: | Line 3: | ||
local p = {} |
local p = {} |
||
⚫ | |||
function p.luawidth(size) |
|||
local size |
|||
--For use within Lua |
|||
local w |
local w |
||
local h |
local h |
||
⚫ | |||
if string.match(size,"^%d+x%d+px$") ~= nil then -- width and height (eg. 20x10px) |
if string.match(size,"^%d+x%d+px$") ~= nil then -- width and height (eg. 20x10px) |
||
Line 30: | Line 29: | ||
end |
end |
||
⚫ | |||
--For external use |
|||
⚫ | |||
end |
|||
return p |
return p |
Revision as of 10:20, 14 March 2015
This template is used internally by Template:Flaglist and should not be used directly.
-- Calculates the width of the span box for [[Template:Flaglist]]
-- based on the specified image size
local p = {}
function p.luawidth(size)
--For use within Lua
local w
local h
if string.match(size,"^%d+x%d+px$") ~= nil then -- width and height (eg. 20x10px)
-- use specified width
w = string.gsub(size,"(%d+)x%d+px","%1")
elseif string.match(size,"^%d+px$") ~= nil then -- width only (eg. 20px)
-- use specified width
w = string.gsub(size,"(%d+)px","%1")
elseif string.match(size,"^x%d+px$") ~= nil then -- height only (eg. x10px)
-- assume a width based on the height
h = string.gsub(size,"x(%d+)px","%1")
w = h * 2.2
w = math.floor(w+0.5) -- round to integer
else -- empty or invalid input
w = 23 -- default width for flagicons
end
w = w + 7 -- extra whitespace between icon and link
return w
end
function p.width(frame)
--For external use
return p.luawidth(frame["args"][1])
end
return p