Модуль:FormatRow: відмінності між версіями

Вилучено вміст Додано вміст
Glovacki (обговорення | внесок)
Створена сторінка: local p = {} function p.AsRows(frame) local args = frame.args; if args[1] == nil then args = frame:getParent().args; end local params = { even = args['...
(Немає відмінностей)

Версія за 20:35, 6 липня 2017

{{i}} Документація модуля[створити]
local p = {}

function p.AsRows(frame)
	local args = frame.args;
	if args[1] == nil then
		args = frame:getParent().args;
	end
	local params = {
		even = args['even'] or args['нс'], 
		odd  = args['odd']  or args['чс'],
		each = args['each'] or args['кс']
	}
	local rows = {}
	local num = 1;
	local cnt = 1;
	value = args[num];
    while value ~= nil do
    	value = mw.text.trim(value)
    	if value ~= '' then
	    	local style = '';
	    	if (cnt % 2) == 0 then
	    	  style = params.even or '';
	    	else
	    	  style = params.odd or '';
	    	end
	    	if params.each ~= nil then
	    		style = params.each .. '; ' .. style;
	    	end
	    	local row = '|-'
	    	if style ~= '' then
	    		row = row .. ' style ="' .. style .. '"';
	    	end
	    	row = row .. '\n';
	  		table.insert(rows, row .. value);
	  		cnt = cnt+1
  		end
    	num = num+1;
        value = args[num]
    end
 	return table.concat(rows, '\n');
end

return p