Модуль:Вклад

Ошибка Lua в package.lua на строке 80: module 'Модуль:Вклад:Добротные статьи' not found.
✯✯✯
Вклад этого участника в добротные статьи Тептар можно оценить примерно таким числом
Ошибка Lua в package.lua на строке 80: module 'Модуль:Вклад:Хорошие статьи' not found.
✰✰✰
Вклад этого участника в хорошие статьи Тептар можно оценить примерно таким числом
Ошибка Lua в package.lua на строке 80: module 'Модуль:Вклад:Избранные статьи' not found.
Шаблон:Это избранная статьяШаблон:Это избранная статьяШаблон:Это избранная статья
Вклад этого участника в избранные статьи Тептар можно оценить примерно таким числом

Модуль для юзербоксов Шаблон:Userbox/Вклад в добротные статьи, Шаблон:Userbox/Вклад в хорошие статьи и Шаблон:Userbox/Вклад в избранные статьи. Данные обновлялись ботом Secretary.


p = {}

function p.calculate( dataModule, userName )
	local data = mw.loadData(dataModule)

	local result = 0;
	for _, articleData in pairs( data ) do
		for __, line in pairs( articleData ) do
			if ( line[1] == userName ) then
				result = result + line[2];
			end
		end
	end
	if ( result == 0 ) then
		return 'N/A';
	end
	return math.floor(result) / 100;
end

function p.quality( frame )
	return p.calculate('Модуль:Вклад:Добротные статьи', frame.args[1]);
end

function p.qualityAll( )
	local data = mw.loadData('Модуль:Вклад:Добротные статьи')
	local result = ''

	for _, line in pairs( data ) do
		result = result .. '|' .. line[1] .. '\n'
		result = result .. '|' .. line[2] .. '\n'
		result = result .. '|-\n'
	end
	return result
end

function p.good( frame )
	return p.calculate('Модуль:Вклад:Хорошие статьи', frame.args[1]);
end

function p.featured( frame )
	return p.calculate('Модуль:Вклад:Избранные статьи', frame.args[1]);
end

return p;