Module:Animate

From CelesTek Wiki
Jump to: navigation, search

Documentation for this module may be created at Module:Animate/doc

local p = {}
function p.animate( f )
	local args = f
	if f == mw.getCurrentFrame() then
		args = f:getParent().args
	end
	local files = args[1] or ''
	local size = args[2] or ''
	
	if size ~= '' then
		size = '|' .. size
	end
	
	local images = {}
	for image in mw.text.gsplit( files, '%s*;%s*' ) do
		if image == '' then
			table.insert( images, '<span><br></span>' )
		else
                        if image:match( '.png' ) then
			       table.insert( images, '<span>[[File:' .. image .. size .. ']]</span>' )
                        else
			       table.insert( images, '<span>[[File:' .. image .. '.png' .. size .. ']]</span>' )
                        end
		end
	end
	images[1] = images[1]:gsub( '^<span>', '<span class="active">' )
	
	return '<span class="animated">' .. table.concat( images ) .. '</span>'
end
return p