Модуль:Анімація

Матеріал з Minecraft Wiki
Перейти до: навігація, пошук

This module implements {{Анімація}}. It accepts no directly passed arguments, only parent arguments and is therefore recommended to not be invoked directly from templates.

[перегляд | редагувати | історія | оновити]Розташована вище документація включена з Модуль:Анімація/док.
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
			table.insert( images, '<span>[[Файл:' .. image .. size .. ']]</span>' )
		end
	end
	images[1] = images[1]:gsub( '^<span>', '<span class="active">' )
	
	return '<span class="animated">' .. table.concat( images ) .. '</span>'
end

function p.text( f )
	local args = f
		if f == mw.getCurrentFrame() then
			args = f:getParent().args
		end
		local texts = args[1]
		local result = {}
		for text in mw.text.gsplit( texts, '%s*;%s*' ) do
			if text == '' then
				table.insert( result, '<span><br></span>' )
			else
				table.insert( result, '<span>' .. text .. '</span>' )
			end
		end
	result[1] = result[1]:gsub( '^<span>', '<span class="active">' )
		
	return '<span class="animated">' .. table.concat( result ) .. '</span>'
end

return p