Module:Clean image
Jump to navigation
Jump to search
Module documentation
This documentation is transcluded from Module:Clean image/doc. [edit] [history] [purge]
Module:Clean image's function main is invoked by Template:Clean image.
Module:Clean image requires Module:Paramtest.
Cleans an input image to prevent double linking.
This module is a helper module to be used by other modules; it may not designed to be invoked directly. See RuneScape:Lua/Helper modules for a full list and more information. For a full list of modules using this helper click here
Function | Type | Use |
---|---|---|
clean(args) | string | Input args is a table with fields:
|
local hc = require('Module:Paramtest').has_content
local p = {}
p.main = function(frame)
local args = frame:getParent().args
local clean = {
file = args.file or args[1],
width = args.width or args[2],
height = args.height or args[3],
link = args.link
}
return p.clean(clean)
end
p.clean = function(args)
local file = args.file
if not hc(file) or (file and (file:lower() == 'no' or file == '')) then
return ''
end
local height, width = '',''
if hc(args.height) then
height = 'x'..args.height
end
if hc(args.width) then
width = args.width
end
local link = ''
if hc(args.link) then
if args.link == 'no' then
link = '|link='
else
link = '|link='..args.link
end
end
local size = ''
if width ~= '' or height ~= '' then
size = string.format('|%s%spx', width, height)
end
file = file:gsub('%[',''):gsub('%]',''):gsub('[Ff]ile:',''):gsub('{{!}}','|')
-- enforce max height and width
file = mw.text.split(file, '|')
file = string.format('%s%s%s',file[1], size, link)
return '[[File:'..file..'|frameless]]'
end
return p