Module:Utils: Difference between revisions
From Eco - English Wiki
[checked revision] | [unchecked revision] |
m (Minor bug fix) |
No edit summary |
||
(4 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
local origArgs = frame:getParent().args | local origArgs = frame:getParent().args | ||
local args = {} | local args = {} | ||
for k, v in pairs(origArgs) do | for k, v in pairs(origArgs) do | ||
v = mw.text.trim(tostring(v)) | v = mw.text.trim(tostring(v)) | ||
Line 12: | Line 12: | ||
end | end | ||
end | end | ||
return args | return args | ||
end | end | ||
function p.checkImage(name, too_expensive) | |||
local icon = name:gsub('%s+', '') .. '_Icon.png' | |||
if too_expensive then | |||
return icon | |||
end | |||
if mw.title.makeTitle('File', icon).file.exists then | |||
return icon | |||
else | |||
return 'NoImage.png' | |||
end | |||
end | |||
return p | return p |
Revision as of 12:44, 24 February 2021
This module provides utility functions used from other modules.
Usage
Add the following line of code at the top of your file.
local Utils = require("Module:Utils")
-- You may then call functions from this module in your script. For example:
local tableLength = Utils.tableLen(myTable)
local p = {}
-- Trims and parses the args into a table, then returns the table
function p.normaliseArgs(frame)
local origArgs = frame:getParent().args
local args = {}
for k, v in pairs(origArgs) do
v = mw.text.trim(tostring(v))
if v ~= '' then
args[k] = v
end
end
return args
end
function p.checkImage(name, too_expensive)
local icon = name:gsub('%s+', '') .. '_Icon.png'
if too_expensive then
return icon
end
if mw.title.makeTitle('File', icon).file.exists then
return icon
else
return 'NoImage.png'
end
end
return p