Module:Infobox: Difference between revisions
No edit summary |
No edit summary |
||
| Line 9: | Line 9: | ||
local invImages = {} | local invImages = {} | ||
local defaultImageSize = args.defaultimagesize or '150px' | local defaultImageSize = args.defaultimagesize or '150px' | ||
args.image1 = args.image1 or args.image or title .. '.png' | |||
args.image1size = args.image1size or args.imagesize | |||
args.invimage1 = args.invimage1 or args.invimage | |||
local imgCount = {} | local imgCount = {} | ||
| Line 26: | Line 18: | ||
for k, v in pairs( args ) do | for k, v in pairs( args ) do | ||
local image, num = k:match( '^(image)(%d+)$' ) | local image, num = k:match( '^(image)(%d+)$' ) | ||
local invImage, invNum = k:match( '^(invimage)(%d | local invImage, invNum = k:match( '^(invimage)(%d+)$' ) | ||
if image then | if image then | ||
table.insert( imgCount, tonumber( num ) ) | table.insert( imgCount, tonumber( num ) ) | ||
elseif invImage then | elseif invImage then | ||
table.insert( invImgCount, tonumber( invNum ) | table.insert( invImgCount, tonumber( invNum ) ) | ||
end | end | ||
end | end | ||
table.sort( imgCount ) | table.sort( imgCount ) | ||
local animate | |||
for k, v in ipairs( imgCount ) do | for k, v in ipairs( imgCount ) do | ||
local image = args['image' .. v] | |||
local size = args['image' .. v .. 'size'] or defaultImageSize | |||
if image:match( ';' ) then | |||
if not animate then | |||
animate = require( 'Module:Animate' ).animate | |||
end | |||
image = animate{ image, size } | |||
elseif image ~= 'none' then | |||
local imageTitle = mw.title.new( 'File:' .. image ) | |||
if imageTitle and imageTitle.exists then | |||
image = '[[File:' .. image .. '|' .. size .. ']]' | |||
else | else | ||
image = '[[File:' .. | image = '[[File:No image.svg|' .. size .. '|link=File:' .. image .. '|Upload this image]]' | ||
end | end | ||
end | end | ||
table.insert( images, '<div style="padding-top:1em">' .. image .. '</div>' ) | |||
end | end | ||
images = table.concat( images, '\n' ) | images = table.concat( images, '\n' ) | ||