This is the module sandbox page for Module:Main page image (diff). |
This module provides utility for wrappers of ((Main page image)).
((#invoke:Main page image|width|ImageTitle))
Get image width from ImageTitle.
ImageTitle must not contain the namespace prefix (eg "File:"). You can use ((Remove file prefix)) to strip it, if it exists, when sanitising template params. Example: ((#invoke:Main page image|width|((Remove file prefix|(({image))))))}
local p = {}
local getArgs = require('Module:Arguments').getArgs
function p.width(frame)
local args = getArgs(frame)
return p._width(args)
end
function p._width(args)
local new_width = 140
local page = mw.title.makeTitle('File', args[1] or '')
if not page or not page.fileExists then
return new_width
end
new_width = math.floor(140 * math.sqrt(page.file.width / page.file.height) + 0.5)
return new_width
end
return p