<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://ru.ru-skazki.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3AWikiProject</id>
	<title>Модуль:WikiProject - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://ru.ru-skazki.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3AWikiProject"/>
	<link rel="alternate" type="text/html" href="http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:WikiProject&amp;action=history"/>
	<updated>2026-05-08T08:18:44Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:WikiProject&amp;diff=4523&amp;oldid=prev</id>
		<title>Импортёр: 1 версия импортирована</title>
		<link rel="alternate" type="text/html" href="http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:WikiProject&amp;diff=4523&amp;oldid=prev"/>
		<updated>2024-05-01T10:06:32Z</updated>

		<summary type="html">&lt;p&gt;1 версия импортирована&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 13:06, 1 мая 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Импортёр</name></author>
	</entry>
	<entry>
		<id>http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:WikiProject&amp;diff=4522&amp;oldid=prev</id>
		<title>ru&gt;Andras в 12:24, 16 июля 2023</title>
		<link rel="alternate" type="text/html" href="http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:WikiProject&amp;diff=4522&amp;oldid=prev"/>
		<updated>2023-07-16T12:24:19Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local wp = {}&lt;br /&gt;
&lt;br /&gt;
local class_info = {&lt;br /&gt;
	[&amp;#039;ИС&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Избранные статьи проекта %s&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#33CCFF&amp;#039;,&lt;br /&gt;
		image = &amp;#039;[[Файл:Featured article star.svg|Избранная статья|14px|alt=🌟]]&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Избр.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 0&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;ИСП&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Избранные списки проекта %s&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#33CCFF&amp;#039;,&lt;br /&gt;
		image = &amp;#039;[[Файл:Feat_lists.svg|Избранный список|14px|alt=☰]]&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Избр.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 1&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;ХС&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Хорошие статьи проекта %s&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#90EE90&amp;#039;,&lt;br /&gt;
		image = &amp;#039;[[Файл:Blue star unboxed.svg|Хорошая статья|14px|alt=✪]]&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Хор.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 2&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;ДС&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Добротные статьи проекта %s&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#90EE90&amp;#039;,&lt;br /&gt;
		image = &amp;#039;[[Файл:Crystal Clear action bookmark Silver approved.svg|Добротная статья|14px|alt=✔]]&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Добр.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 3&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;I&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Статьи проекта %s I уровня&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#CCFF99&amp;#039;,&lt;br /&gt;
		image = &amp;#039;&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;I&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 4&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;II&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Статьи проекта %s II уровня&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FFEE00&amp;#039;,&lt;br /&gt;
		image = &amp;#039;&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;II&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 5&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;III&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Статьи проекта %s III уровня&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FFA07A&amp;#039;,&lt;br /&gt;
		image = &amp;#039;&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;III&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 6&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;IV&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Статьи проекта %s IV уровня&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FF6347&amp;#039;,&lt;br /&gt;
		image = &amp;#039;&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;IV&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 7&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;Список&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Списки проекта %s&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#AA88FF&amp;#039;,&lt;br /&gt;
		image = &amp;#039;&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Список&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 8&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;неизвестный&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039;Статьи проекта %s неизвестного уровня&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FFFFF&amp;#039;,&lt;br /&gt;
		image = &amp;#039;&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Неизв.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 9&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local importance_info = {&lt;br /&gt;
	[&amp;#039;высшая&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039; высшей важности&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FCC200&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Высш.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 0&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;высокая&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039; высокой важности&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FFDF00&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Выс.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 1&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;средняя&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039; средней важности&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FBEC5D&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Сред.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 2&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;низкая&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039; низкой важности&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FFEC8B&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Низ.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 3&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;#039;неизвестная&amp;#039;] = {&lt;br /&gt;
		category = &amp;#039; неизвестной важности&amp;#039;,&lt;br /&gt;
		color = &amp;#039;#FFFFFF&amp;#039;,&lt;br /&gt;
		shortname = &amp;#039;Неизв.&amp;#039;,&lt;br /&gt;
		sortkey = &amp;#039; 9&amp;#039;&lt;br /&gt;
	},&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- Вспомогательные строковые функции&lt;br /&gt;
&lt;br /&gt;
local function startswith( str, prefix )&lt;br /&gt;
	return mw.ustring.sub( str, 1, mw.ustring.len( prefix ) ) == prefix&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function cutprefix( str, length )&lt;br /&gt;
	return mw.ustring.sub( str, length + 1 )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function endswith( str, suffix )&lt;br /&gt;
	return mw.ustring.sub( str, -mw.ustring.len( suffix ) ) == suffix&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function cutsuffix( str, length )&lt;br /&gt;
	return mw.ustring.sub( str, 1, -length - 1 )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Вспомогательная функция, определяющая, что параметр задан, не пуст и не ноль&lt;br /&gt;
local function param_to_boolean( param )&lt;br /&gt;
	return param ~= nil and param ~= &amp;#039;&amp;#039; and param ~= &amp;#039;0&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Аналог шаблона «Статистика проекта/Категория», только с общепринятыми названиями уровней и&lt;br /&gt;
важностей. Для неизвестного уровня используется параметр &amp;#039;неизвестный&amp;#039;, для неизвестной важности —&lt;br /&gt;
&amp;#039;неизвестная&amp;#039;. Если оставить эти параметры пустыми, уровень/важность указана не будет.&lt;br /&gt;
&lt;br /&gt;
— form_cat_name( &amp;#039;Музыка&amp;#039;, &amp;#039;ИС&amp;#039;, &amp;#039;высшая&amp;#039; )&lt;br /&gt;
→ &amp;#039;Избранные статьи проекта Музыка высшей важности&amp;#039;&lt;br /&gt;
— form_cat_name( &amp;#039;Музыка&amp;#039;, &amp;#039;I&amp;#039;, &amp;#039;неизвестная&amp;#039; )&lt;br /&gt;
→ &amp;#039;Статьи проекта Музыка I уровня неизвестной важности&amp;#039;&lt;br /&gt;
— form_cat_name( &amp;#039;Музыка&amp;#039;, &amp;#039;&amp;#039;, &amp;#039;средняя&amp;#039;)&lt;br /&gt;
→ &amp;#039;Статьи проекта Музыка средней важности&amp;#039;&lt;br /&gt;
]]&lt;br /&gt;
local function form_cat_name( project, class, importance )&lt;br /&gt;
	local result&lt;br /&gt;
&lt;br /&gt;
	if class_info[class] ~= nil then&lt;br /&gt;
		result = string.format(class_info[class].category, project)&lt;br /&gt;
	else&lt;br /&gt;
		result = &amp;#039;Статьи проекта &amp;#039; .. project&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if importance_info[importance] ~= nil then&lt;br /&gt;
		result = result .. importance_info[importance].category&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Обратная предыдущей функция: парсит название категории и возвращает таблицу вида&lt;br /&gt;
{ project, class, importance, is_error }, где is_error принимает значение true, если&lt;br /&gt;
название категории имеет некорректный вид.&lt;br /&gt;
]]&lt;br /&gt;
local function parse_cat_name( category )&lt;br /&gt;
	-- Эх, если бы тут были полноценные регулярные выражения... =\&lt;br /&gt;
	local result = {&lt;br /&gt;
		project = &amp;#039;&amp;#039;,&lt;br /&gt;
		class = &amp;#039;&amp;#039;,&lt;br /&gt;
		importance = &amp;#039;&amp;#039;,&lt;br /&gt;
		is_error = false&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	if endswith( category, &amp;#039; по уровню&amp;#039; ) then&lt;br /&gt;
		if not startswith( category, &amp;#039;Статьи проекта &amp;#039; ) then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
			return result&lt;br /&gt;
		end&lt;br /&gt;
		category = cutprefix( category, 15 )&lt;br /&gt;
		category = cutsuffix( category, 10 )&lt;br /&gt;
		result.project = category&lt;br /&gt;
		result.class = &amp;#039;*&amp;#039;&lt;br /&gt;
		return result&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if endswith( category, &amp;#039; по важности&amp;#039; ) then&lt;br /&gt;
		if not startswith( category, &amp;#039;Статьи проекта &amp;#039; ) then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
			return result&lt;br /&gt;
		end&lt;br /&gt;
		category = cutprefix( category, 15 )&lt;br /&gt;
		category = cutsuffix( category, 12 )&lt;br /&gt;
		result.project = category&lt;br /&gt;
		result.importance = &amp;#039;*&amp;#039;&lt;br /&gt;
		return result&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if endswith( category, &amp;#039; высшей важности&amp;#039; ) then&lt;br /&gt;
		category = cutsuffix( category, 16 )&lt;br /&gt;
		result.importance = &amp;#039;высшая&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; высокой важности&amp;#039; ) then&lt;br /&gt;
		category = cutsuffix( category, 17)&lt;br /&gt;
		result.importance = &amp;#039;высокая&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; средней важности&amp;#039; ) then&lt;br /&gt;
		category = cutsuffix( category, 17 )&lt;br /&gt;
		result.importance = &amp;#039;средняя&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; низкой важности&amp;#039; ) then&lt;br /&gt;
		category = cutsuffix( category, 16 )&lt;br /&gt;
		result.importance = &amp;#039;низкая&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; неизвестной важности&amp;#039; ) then&lt;br /&gt;
		category = cutsuffix( category, 21 )&lt;br /&gt;
		result.importance = &amp;#039;неизвестная&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if startswith( category, &amp;#039;Избранные статьи проекта &amp;#039; ) then&lt;br /&gt;
		category = cutprefix( category, 25 )&lt;br /&gt;
		result.class = &amp;#039;ИС&amp;#039;&lt;br /&gt;
	elseif startswith( category, &amp;#039;Избранные списки проекта &amp;#039; ) then&lt;br /&gt;
		category = cutprefix( category, 25 )&lt;br /&gt;
		result.class = &amp;#039;ИСП&amp;#039;&lt;br /&gt;
	elseif startswith( category, &amp;#039;Хорошие статьи проекта &amp;#039; ) then&lt;br /&gt;
		category = cutprefix( category, 23 )&lt;br /&gt;
		result.class = &amp;#039;ХС&amp;#039;&lt;br /&gt;
	elseif startswith( category, &amp;#039;Добротные статьи проекта &amp;#039; ) then&lt;br /&gt;
		category = cutprefix( category, 25 )&lt;br /&gt;
		result.class = &amp;#039;ДС&amp;#039;&lt;br /&gt;
	elseif startswith( category, &amp;#039;Списки проекта &amp;#039; ) then&lt;br /&gt;
		category = cutprefix( category, 15 )&lt;br /&gt;
		result.class = &amp;#039;Список&amp;#039;&lt;br /&gt;
	elseif startswith( category, &amp;#039;Статьи проекта &amp;#039; ) then&lt;br /&gt;
		category = cutprefix( category, 15 )&lt;br /&gt;
	else&lt;br /&gt;
		result.is_error = true&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if endswith( category, &amp;#039; I уровня&amp;#039; ) then&lt;br /&gt;
		if result.class ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
		end&lt;br /&gt;
		category = cutsuffix( category, 9 )&lt;br /&gt;
		result.class = &amp;#039;I&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; II уровня&amp;#039; ) then&lt;br /&gt;
		if result.class ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
		end&lt;br /&gt;
		category = cutsuffix( category, 10 )&lt;br /&gt;
		result.class = &amp;#039;II&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; III уровня&amp;#039; ) then&lt;br /&gt;
		if result.class ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
		end&lt;br /&gt;
		category = cutsuffix( category, 11 )&lt;br /&gt;
		result.class = &amp;#039;III&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; IV уровня&amp;#039; ) then&lt;br /&gt;
		if result.class ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
		end&lt;br /&gt;
		category = cutsuffix( category, 10 )&lt;br /&gt;
		result.class = &amp;#039;IV&amp;#039;&lt;br /&gt;
	elseif endswith( category, &amp;#039; неизвестного уровня&amp;#039; ) then&lt;br /&gt;
		if result.class ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			result.is_error = true&lt;br /&gt;
		end&lt;br /&gt;
		category = cutsuffix( category, 20 )&lt;br /&gt;
		result.class = &amp;#039;неизвестный&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	result.project = category&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Составляет табличку со статистикой статей проекта по уровню и важности. Если параметр nocat не&lt;br /&gt;
задан, также добавляет страницу во все проектные категории и в категорию&lt;br /&gt;
«Категория:Википедия:Статистика по проектам».&lt;br /&gt;
]]&lt;br /&gt;
function wp.project_statistics( frame )&lt;br /&gt;
	local name = frame.args[&amp;#039;1&amp;#039;] or frame.args[&amp;#039;name&amp;#039;] or &amp;#039;&amp;#039;&lt;br /&gt;
	if name == &amp;#039;&amp;#039; then&lt;br /&gt;
		local title = mw.title.getCurrentTitle()&lt;br /&gt;
		local project&lt;br /&gt;
		if title.namespace == 104 then&lt;br /&gt;
			project = title.rootText&lt;br /&gt;
		else&lt;br /&gt;
			project = &amp;#039;Проект&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		return &amp;#039;Скопируйте стандартную строку: &amp;lt;code&amp;gt;{{Статистика проекта|&amp;#039; .. project ..&lt;br /&gt;
		       &amp;#039;|featured=1|list=1|nocat=&amp;amp;lt;includeonly&amp;amp;gt;1&amp;amp;lt;/includeonly&amp;amp;gt;|minus=1}}&amp;lt;/code&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	local minus = tonumber(frame.args[&amp;#039;minus&amp;#039;]) or 0&lt;br /&gt;
	local align = frame.args[&amp;#039;align&amp;#039;] or &amp;#039;right&amp;#039;&lt;br /&gt;
	local featured = param_to_boolean( frame.args[&amp;#039;featured&amp;#039;] )&lt;br /&gt;
	local list = param_to_boolean( frame.args[&amp;#039;list&amp;#039;] )&lt;br /&gt;
	local nocat = param_to_boolean( frame.args[&amp;#039;nocat&amp;#039;] )&lt;br /&gt;
&lt;br /&gt;
	local displayed_importances = { &amp;#039;высшая&amp;#039;, &amp;#039;высокая&amp;#039;, &amp;#039;средняя&amp;#039;, &amp;#039;низкая&amp;#039;, &amp;#039;неизвестная&amp;#039; }&lt;br /&gt;
	local displayed_classes&lt;br /&gt;
	if featured and list then&lt;br /&gt;
		displayed_classes = { &amp;#039;ИС&amp;#039;, &amp;#039;ИСП&amp;#039;, &amp;#039;ХС&amp;#039;, &amp;#039;ДС&amp;#039;, &amp;#039;I&amp;#039;, &amp;#039;II&amp;#039;, &amp;#039;III&amp;#039;, &amp;#039;IV&amp;#039;, &amp;#039;Список&amp;#039;, &amp;#039;неизвестный&amp;#039; }&lt;br /&gt;
	elseif featured then&lt;br /&gt;
		displayed_classes = { &amp;#039;ИС&amp;#039;, &amp;#039;ХС&amp;#039;, &amp;#039;ДС&amp;#039;, &amp;#039;I&amp;#039;, &amp;#039;II&amp;#039;, &amp;#039;III&amp;#039;, &amp;#039;IV&amp;#039;, &amp;#039;неизвестный&amp;#039; }&lt;br /&gt;
	elseif list then&lt;br /&gt;
		displayed_classes = { &amp;#039;I&amp;#039;, &amp;#039;II&amp;#039;, &amp;#039;III&amp;#039;, &amp;#039;IV&amp;#039;, &amp;#039;Список&amp;#039;, &amp;#039;неизвестный&amp;#039; }&lt;br /&gt;
	else&lt;br /&gt;
		displayed_classes = { &amp;#039;I&amp;#039;, &amp;#039;II&amp;#039;, &amp;#039;III&amp;#039;, &amp;#039;IV&amp;#039;, &amp;#039;неизвестный&amp;#039; }&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local all_pages = 0&lt;br /&gt;
	local importance_pages = {}&lt;br /&gt;
&lt;br /&gt;
	local result = &amp;#039;{| class=&amp;quot;wikitable&amp;quot; &amp;#039;&lt;br /&gt;
	if align == &amp;#039;left&amp;#039; or align == &amp;#039;center&amp;#039; or align == &amp;#039;right&amp;#039; then&lt;br /&gt;
		result = result .. &amp;#039;align=&amp;quot;&amp;#039; .. align .. &amp;#039;&amp;quot; &amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	result = result .. &amp;#039;style=&amp;quot;text-align: center; font-size: 11px; margin-top: 3px; margin-bottom: 3px; margin-left: 9px;&amp;quot;\n&amp;#039;&lt;br /&gt;
	result = result .. &amp;#039;! colspan=&amp;quot;7&amp;quot; | [[Проект:&amp;#039; .. name .. &amp;#039;/Оценки|Статьи]] проекта «[[Проект:&amp;#039; .. name .. &amp;#039;|&amp;#039; .. name .. &amp;#039;]]»\n&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	result = result .. &amp;#039;|-\n! rowspan=&amp;quot;2&amp;quot; | [[:Категория:Статьи проекта &amp;#039; .. name .. &amp;#039; по уровню|Уровень&amp;lt;br&amp;gt;качества]]&amp;#039;&lt;br /&gt;
	result = result .. &amp;#039; !! colspan=&amp;quot;6&amp;quot; | [[:Категория:Статьи проекта &amp;#039; .. name .. &amp;#039; по важности|Важность]]\n&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	result = result .. &amp;#039;|-\n&amp;#039;&lt;br /&gt;
	for _, importance in ipairs(displayed_importances) do&lt;br /&gt;
		info = importance_info[importance]&lt;br /&gt;
		importance_pages[importance] = 0&lt;br /&gt;
		result = result .. &amp;#039;! style=&amp;quot;background: &amp;#039; .. info.color .. &amp;#039;; text-align: center;&amp;quot; |\n&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;[[:Категория:&amp;#039; .. form_cat_name( name, &amp;#039;&amp;#039;, importance ) .. &amp;#039;|&amp;#039; .. info.shortname .. &amp;#039;]]\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	result = result .. &amp;#039;! [[:Категория:Статьи проекта &amp;#039; .. name .. &amp;#039;|Всего]]\n&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	for _, class in ipairs(displayed_classes) do&lt;br /&gt;
		info = class_info[class]&lt;br /&gt;
&lt;br /&gt;
		local class_pages = 0&lt;br /&gt;
		local class_catname = form_cat_name( name, class, &amp;#039;&amp;#039; )&lt;br /&gt;
&lt;br /&gt;
		result = result .. &amp;#039;|-\n!style=&amp;quot;background: &amp;#039; .. info.color .. &amp;#039;; text-align: center;&amp;quot; | &amp;#039;&lt;br /&gt;
		if info.image ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			result = result .. info.image .. &amp;#039; &amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		result = result .. &amp;#039;[[:Категория:&amp;#039; .. class_catname .. &amp;#039;|&amp;#039; .. info.shortname .. &amp;#039;]]\n&amp;#039;&lt;br /&gt;
&lt;br /&gt;
		for _, importance in ipairs(displayed_importances) do&lt;br /&gt;
			result = result .. &amp;#039;| &amp;#039;&lt;br /&gt;
&lt;br /&gt;
			local catname = form_cat_name( name, class, importance )&lt;br /&gt;
			local pages = mw.site.stats.pagesInCategory( catname, &amp;#039;pages&amp;#039; ) - minus&lt;br /&gt;
			if pages &amp;gt; 0 then&lt;br /&gt;
				all_pages = all_pages + pages&lt;br /&gt;
				class_pages = class_pages + pages&lt;br /&gt;
				importance_pages[importance] = importance_pages[importance] + pages&lt;br /&gt;
&lt;br /&gt;
				result = result .. &amp;#039;[[:Категория:&amp;#039; .. catname .. &amp;#039;|&amp;#039; .. pages .. &amp;#039;]]&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			result = result .. &amp;#039;\n&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		result = result .. &amp;#039;| \&amp;#039;\&amp;#039;\&amp;#039;[[:Категория:&amp;#039; .. class_catname .. &amp;#039;|&amp;#039; .. class_pages .. &amp;#039;]]\&amp;#039;\&amp;#039;\&amp;#039;\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	result = result .. &amp;#039;|-\n! [[:Категория:Статьи проекта &amp;#039; .. name .. &amp;#039;|Всего]]\n&amp;#039;&lt;br /&gt;
	for _, importance in ipairs(displayed_importances) do&lt;br /&gt;
		result = result .. &amp;#039;| \&amp;#039;\&amp;#039;\&amp;#039;[[:Категория:&amp;#039; .. form_cat_name( name, &amp;#039;&amp;#039;, importance ) .. &amp;#039;|&amp;#039; .. importance_pages[importance] .. &amp;#039;]]\&amp;#039;\&amp;#039;\&amp;#039;\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	result = result .. &amp;#039;| \&amp;#039;\&amp;#039;\&amp;#039; [[:Категория:Статьи проекта &amp;#039; .. name .. &amp;#039;|&amp;#039; .. all_pages .. &amp;#039;]]\&amp;#039;\&amp;#039;\&amp;#039;\n&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	result = result .. &amp;#039;|-\n!colspan=&amp;quot;8&amp;quot; style=&amp;quot;font-weight: normal&amp;quot; | &amp;lt;small&amp;gt;Статистика обновляется автоматически &amp;#039;&lt;br /&gt;
	result = result .. frame:expandTemplate{ title = &amp;#039;Очистить кэш&amp;#039;, args = { [&amp;#039;1&amp;#039;] = &amp;#039;&amp;amp;#x21BB;&amp;#039; } }&lt;br /&gt;
	result = result .. &amp;#039;&amp;lt;/small&amp;gt;\n&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	result = result .. &amp;#039;|}&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	local sortkey = &amp;#039;|+&amp;#039;&lt;br /&gt;
	if not nocat then&lt;br /&gt;
		result = result .. &amp;#039;\n\n[[Категория:РуСказки:Статистика по проектам|&amp;#039; .. name .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		for _, class in ipairs( displayed_classes ) do&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:&amp;#039; .. form_cat_name( name, class, &amp;#039;&amp;#039; ) .. sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		for _, importance in ipairs(displayed_importances) do&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:&amp;#039; .. form_cat_name( name, &amp;#039;&amp;#039;, importance ) .. sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		for _, class in ipairs( displayed_classes ) do&lt;br /&gt;
			for _, importance in ipairs(displayed_importances) do&lt;br /&gt;
				result = result .. &amp;#039;\n[[Категория:&amp;#039; .. form_cat_name( name, class, importance ) .. sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
Заполняет страницу для категории: заполняет верхние категории, добавляет __HIDDENCAT__.&lt;br /&gt;
]]&lt;br /&gt;
function wp.category_description( frame )&lt;br /&gt;
	local title = mw.title.getCurrentTitle()&lt;br /&gt;
	if title.namespace ~= 14 then&lt;br /&gt;
		return &amp;#039;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local parsed_title = parse_cat_name( title.text )&lt;br /&gt;
	if parsed_title.is_error then&lt;br /&gt;
		return &amp;#039;&amp;lt;strong class=&amp;quot;error&amp;quot;&amp;gt;Ошибка модуля WikiProject: не удалось распарсить заголовок.&amp;lt;/strong&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	local project = parsed_title.project&lt;br /&gt;
	local class = parsed_title.class&lt;br /&gt;
	local importance = parsed_title.importance&lt;br /&gt;
&lt;br /&gt;
	local result = &amp;#039;&amp;#039;&lt;br /&gt;
	if not param_to_boolean( frame.args[&amp;#039;notable&amp;#039;] ) then&lt;br /&gt;
		frame.args[&amp;#039;name&amp;#039;] = project&lt;br /&gt;
		if frame.args[&amp;#039;align&amp;#039;] == nil then&lt;br /&gt;
			frame.args[&amp;#039;align&amp;#039;] = &amp;#039;right&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		if frame.args[&amp;#039;minus&amp;#039;] == nil then&lt;br /&gt;
			frame.args[&amp;#039;minus&amp;#039;] = &amp;#039;1&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		if frame.args[&amp;#039;featured&amp;#039;] == nil then&lt;br /&gt;
			frame.args[&amp;#039;featured&amp;#039;] = &amp;#039;1&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		if frame.args[&amp;#039;list&amp;#039;] == nil then&lt;br /&gt;
			frame.args[&amp;#039;list&amp;#039;] = &amp;#039;1&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		frame.args[&amp;#039;nocat&amp;#039;] = &amp;#039;1&amp;#039;&lt;br /&gt;
		if mw.isSubsting() then&lt;br /&gt;
			result = &amp;#039;{{Статистика проекта|&amp;#039; .. project&lt;br /&gt;
			result = result .. &amp;#039;|align=&amp;#039; .. frame.args[&amp;#039;align&amp;#039;]&lt;br /&gt;
			result = result .. &amp;#039;|minus=&amp;#039; .. frame.args[&amp;#039;minus&amp;#039;]&lt;br /&gt;
			result = result .. &amp;#039;|featured=&amp;#039; .. frame.args[&amp;#039;featured&amp;#039;]&lt;br /&gt;
			result = result .. &amp;#039;|list=&amp;#039; .. frame.args[&amp;#039;list&amp;#039;]&lt;br /&gt;
			result = result .. &amp;#039;|nocat=1}}\n&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			result = wp.project_statistics( frame ) .. &amp;#039;\n&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if class == &amp;#039;&amp;#039; and importance == &amp;#039;&amp;#039; then&lt;br /&gt;
		-- Статьи проекта X&lt;br /&gt;
		if mw.isSubsting() then&lt;br /&gt;
			result = result .. &amp;#039;{{Индекс категории АБВ (удобный)|depth=2}}&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			result = result .. frame:expandTemplate{ title = &amp;#039;Индекс категории АБВ (удобный)&amp;#039;, args = { [&amp;#039;depth&amp;#039;] = &amp;#039;2&amp;#039; } }&lt;br /&gt;
		end&lt;br /&gt;
		result = result .. &amp;#039;__HIDDENCAT__\n[[Категория:Проект:&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
	elseif class == &amp;#039;*&amp;#039; then&lt;br /&gt;
		-- Статьи проекта X по уровню&lt;br /&gt;
		if mw.isSubsting() then&lt;br /&gt;
			result = result .. &amp;#039;{{Метакатегория}}&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			result = result .. frame:expandTemplate{ title = &amp;#039;Метакатегория&amp;#039; }&lt;br /&gt;
		end&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:РуСказки:Статьи проектов по уровню|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:Статьи проекта &amp;#039; .. project .. &amp;#039;|*]]&amp;#039;&lt;br /&gt;
	elseif importance == &amp;#039;*&amp;#039; then&lt;br /&gt;
		-- Статьи проекта X по важности&lt;br /&gt;
		if mw.isSubsting() then&lt;br /&gt;
			result = result .. &amp;#039;{{Метакатегория}}&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			result = result .. frame:expandTemplate{ title = &amp;#039;Метакатегория&amp;#039; }&lt;br /&gt;
		end&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:РуСказки:Статьи по важности|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:Статьи проекта &amp;#039; .. project .. &amp;#039;|*]]&amp;#039;&lt;br /&gt;
	elseif importance == &amp;#039;&amp;#039; then&lt;br /&gt;
		-- Статьи проекта X уровня N&lt;br /&gt;
		result = result .. &amp;#039;__HIDDENCAT__&amp;#039;&lt;br /&gt;
		if class == &amp;#039;Список&amp;#039; then&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:Списки по проектам|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		elseif class == &amp;#039;ИСП&amp;#039; then&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:Избранные списки по проектам|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		elseif class == &amp;#039;ИС&amp;#039; then&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:Избранные статьи по проектам|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		elseif class == &amp;#039;ХС&amp;#039; then&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:Хорошие статьи по проектам|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		elseif class == &amp;#039;ДС&amp;#039; then&lt;br /&gt;
			result = result .. &amp;#039;\n[[Категория:Добротные статьи по проектам|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:Статьи проекта &amp;#039; .. project .. &amp;#039; по уровню|&amp;#039; .. class_info[class].sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
	elseif class == &amp;#039;&amp;#039; then&lt;br /&gt;
		-- Статьи проекта X энной важности&lt;br /&gt;
		result = result .. &amp;#039;__HIDDENCAT__&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:Статьи&amp;#039; .. importance_info[importance].category .. &amp;#039;|&amp;#039; .. project .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:Статьи проекта &amp;#039; .. project .. &amp;#039; по важности|&amp;#039; .. importance_info[importance].sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		-- Статьи проекта X уровня N энной важности&lt;br /&gt;
		result = result .. &amp;#039;__HIDDENCAT__&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:&amp;#039; .. form_cat_name( project, class, &amp;#039;&amp;#039; ) .. &amp;#039;|&amp;#039; .. importance_info[importance].sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		result = result .. &amp;#039;\n[[Категория:&amp;#039; .. form_cat_name( project, &amp;#039;&amp;#039;, importance ) .. &amp;#039;|&amp;#039; .. class_info[class].sortkey .. &amp;#039;]]&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return wp&lt;/div&gt;</summary>
		<author><name>ru&gt;Andras</name></author>
	</entry>
</feed>