<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://bukvica.org/w/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3AWikidata%2FMedals</id>
	<title>Модуль:Wikidata/Medals - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://bukvica.org/w/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3AWikidata%2FMedals"/>
	<link rel="alternate" type="text/html" href="https://bukvica.org/w/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/Medals&amp;action=history"/>
	<updated>2026-04-24T15:38:36Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://bukvica.org/w/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/Medals&amp;diff=238373&amp;oldid=prev</id>
		<title>Karaby: 1 версия импортирована</title>
		<link rel="alternate" type="text/html" href="https://bukvica.org/w/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/Medals&amp;diff=238373&amp;oldid=prev"/>
		<updated>2025-07-27T15:36:17Z</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;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 15:36, 27 июля 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&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;!-- diff cache key wiki:diff:1.41:old-238372:rev-238373 --&gt;
&lt;/table&gt;</summary>
		<author><name>Karaby</name></author>
	</entry>
	<entry>
		<id>https://bukvica.org/w/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/Medals&amp;diff=238372&amp;oldid=prev</id>
		<title>Буквица&gt;Putnik: импорт списка дубликатов из az:Modul:Wikidata/Medals</title>
		<link rel="alternate" type="text/html" href="https://bukvica.org/w/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/Medals&amp;diff=238372&amp;oldid=prev"/>
		<updated>2024-05-04T17:24:40Z</updated>

		<summary type="html">&lt;p&gt;импорт списка дубликатов из &lt;a href=&quot;https://az.wikipedia.org/wiki/Modul:Wikidata/Medals&quot; class=&quot;extiw&quot; title=&quot;az:Modul:Wikidata/Medals&quot;&gt;az:Modul:Wikidata/Medals&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local WDS = require( &amp;#039;Module:WikidataSelectors&amp;#039; )&lt;br /&gt;
local moduleDate = require( &amp;#039;Module:Wikidata/date&amp;#039; )&lt;br /&gt;
local awardsOrder = mw.ext.data.get( &amp;quot;Wikidata/awards order.tab&amp;quot; )&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local config = {&lt;br /&gt;
	--Hide award with key QID if there is a reward with value QID&lt;br /&gt;
	absorption = {&lt;br /&gt;
		Q16675272 = &amp;#039;Q654471&amp;#039;,&lt;br /&gt;
		Q16481808 = &amp;#039;Q8706404&amp;#039;,&lt;br /&gt;
		Q1948730 = &amp;#039;Q178473&amp;#039;,&lt;br /&gt;
		Q1980962 = &amp;#039;Q208167&amp;#039;,&lt;br /&gt;
		Q2032399 = &amp;#039;Q2046996&amp;#039;,&lt;br /&gt;
		Q102183407 = &amp;#039;Q103819965&amp;#039;,&lt;br /&gt;
		Q1262166 = &amp;#039;Q80589&amp;#039;,&lt;br /&gt;
		Q749849 = &amp;#039;Q1358055&amp;#039;,&lt;br /&gt;
		Q4287121 = &amp;#039;Q4137462&amp;#039;,&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
--Get string with dates from qualifiers table&lt;br /&gt;
local function datesFromQualifier( context, options, qualifierId )&lt;br /&gt;
	local dates = {}&lt;br /&gt;
	local qualifiers = options.qualifiers[ qualifierId ]&lt;br /&gt;
&lt;br /&gt;
	if qualifiers then&lt;br /&gt;
		for _, qualifier in pairs( qualifiers ) do&lt;br /&gt;
			if qualifier.datavalue then&lt;br /&gt;
				local dateValue = moduleDate.formatDate( context, options, qualifier.datavalue.value )&lt;br /&gt;
				if dateValue then&lt;br /&gt;
					table.insert( dates, dateValue )&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return table.concat( dates, &amp;#039;, &amp;#039; )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--Property function for [[d:Property:P166]]&lt;br /&gt;
function p.formatProperty( context, options )&lt;br /&gt;
	if ( not context ) then error( &amp;#039;context not specified&amp;#039; ); end;&lt;br /&gt;
	if ( not options ) then error( &amp;#039;options not specified&amp;#039; ); end;&lt;br /&gt;
	if ( not options.entityId ) then error( &amp;#039;options.entityId missing&amp;#039; ); end;&lt;br /&gt;
&lt;br /&gt;
	local claims;&lt;br /&gt;
	if options.property then -- TODO: Почему тут может не быть property?&lt;br /&gt;
		claims = context.selectClaims( options, options.property );&lt;br /&gt;
	end&lt;br /&gt;
	if claims == nil then&lt;br /&gt;
		return &amp;#039;&amp;#039; --TODO error?&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Обход всех заявлений утверждения и с накоплением оформленых&lt;br /&gt;
	-- предпочтительных заявлений в таблице.&lt;br /&gt;
	local formattedData = {}&lt;br /&gt;
&lt;br /&gt;
	for i, claim in ipairs( claims ) do&lt;br /&gt;
		if ( claim.mainsnak and&lt;br /&gt;
			claim.mainsnak and&lt;br /&gt;
			claim.mainsnak.datavalue and&lt;br /&gt;
			claim.mainsnak.datavalue.type == &amp;#039;wikibase-entityid&amp;#039;&lt;br /&gt;
		) then&lt;br /&gt;
			local valueId = claim.mainsnak.datavalue.value.id&lt;br /&gt;
			local formattedStatement = context.formatStatement( options, claim )&lt;br /&gt;
			-- здесь может вернуться либо оформленный текст заявления, либо строка ошибки, либо nil&lt;br /&gt;
			if ( formattedStatement and formattedStatement ~= &amp;#039;&amp;#039; ) then&lt;br /&gt;
				formattedStatement = &amp;#039;&amp;lt;span class=&amp;quot;wikidata-claim&amp;quot; data-wikidata-property-id=&amp;quot;&amp;#039; .. string.upper( options.property ) .. &amp;#039;&amp;quot; data-wikidata-claim-id=&amp;quot;&amp;#039; .. claim.id .. &amp;#039;&amp;quot;&amp;gt;&amp;#039; .. formattedStatement .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
				table.insert( formattedData, {&lt;br /&gt;
					id = valueId,&lt;br /&gt;
					html = formattedStatement,&lt;br /&gt;
				} )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Удаление дублей (медаль + звание -&amp;gt; звание)&lt;br /&gt;
	for i, awardData in ipairs( formattedData ) do&lt;br /&gt;
		local isAbsorptionFound = false&lt;br /&gt;
		if config.absorption[ awardData.id ] then&lt;br /&gt;
			local absorptionAwardId = config.absorption[ awardData.id ]&lt;br /&gt;
			for _, absorptionAwardData in ipairs( formattedData ) do&lt;br /&gt;
				if absorptionAwardData.id == absorptionAwardId then&lt;br /&gt;
					isAbsorptionFound = true&lt;br /&gt;
					break&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if isAbsorptionFound then&lt;br /&gt;
			table.remove( formattedData, i )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Сортировка медалей по старшинству&lt;br /&gt;
	local orderedData = {}&lt;br /&gt;
	local lastValue;&lt;br /&gt;
	&lt;br /&gt;
	if ( type (awardsOrder) == &amp;#039;table&amp;#039; ) then&lt;br /&gt;
		-- Если не отсохла stuctured data&lt;br /&gt;
		for i, awardFields in ipairs( awardsOrder.data ) do&lt;br /&gt;
			local awardOrder = awardFields[ 1 ]&lt;br /&gt;
			if awardOrder == &amp;#039;-&amp;#039; then&lt;br /&gt;
				-- separator&lt;br /&gt;
				if lastValue ~= &amp;#039;-&amp;#039; then&lt;br /&gt;
					table.insert( orderedData, &amp;#039;&amp;lt;br&amp;gt;&amp;#039; )&lt;br /&gt;
					lastHeight = nil&lt;br /&gt;
				end&lt;br /&gt;
			else&lt;br /&gt;
				for k, awardData in ipairs( formattedData ) do&lt;br /&gt;
					if awardOrder == awardData.id and not awardData.used then&lt;br /&gt;
						table.insert( orderedData, awardData.html )&lt;br /&gt;
						formattedData[ k ].used = true&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	for i, awardData in ipairs( formattedData ) do&lt;br /&gt;
		if not awardData.used then&lt;br /&gt;
			table.insert( orderedData, awardData.html )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local lastHeight&lt;br /&gt;
	for i, awardHtml in ipairs( orderedData ) do&lt;br /&gt;
		local height = mw.ustring.match( awardHtml, &amp;#039;x%d+px&amp;#039; )&lt;br /&gt;
		if height and lastHeight and height ~= lastHeight then&lt;br /&gt;
			table.insert( orderedData, i, &amp;#039;&amp;lt;br&amp;gt;&amp;#039; )&lt;br /&gt;
		end&lt;br /&gt;
		lastHeight = height&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- создание текстовой строки со списком оформленых заявлений из таблицы&lt;br /&gt;
	local out = mw.text.listToText( orderedData, options.separator, options.conjunction )&lt;br /&gt;
	if out ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		if options.before then&lt;br /&gt;
			out = options.before .. out&lt;br /&gt;
		end&lt;br /&gt;
		if options.after then&lt;br /&gt;
			out = out .. options.after&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return out&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function getImageFromProperty( entityId, propertyId )&lt;br /&gt;
	local imageClaims = WDS.load( entityId, propertyId )&lt;br /&gt;
	if imageClaims and #imageClaims &amp;gt; 0 then&lt;br /&gt;
		for _, claim in ipairs( imageClaims ) do&lt;br /&gt;
			if claim.type == &amp;#039;statement&amp;#039; and claim.mainsnak.snaktype == &amp;#039;value&amp;#039; then&lt;br /&gt;
				return claim.mainsnak.datavalue.value&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Получение изображения (планки или иконки) и его размера&lt;br /&gt;
function p.getImageFromEntity( entityId, actualDate )&lt;br /&gt;
	if type( entityId ) ~= &amp;quot;string&amp;quot; then&lt;br /&gt;
		entityId = entityId.id&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local image = nil&lt;br /&gt;
	local size = &amp;#039;x17px&amp;#039;&lt;br /&gt;
	local border = false&lt;br /&gt;
&lt;br /&gt;
	-- получение изображения планки из элемента&lt;br /&gt;
	image = getImageFromProperty( entityId, &amp;#039;P2425&amp;#039; )&lt;br /&gt;
	if image then&lt;br /&gt;
		border = true&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- получение иконки из элемента&lt;br /&gt;
	if not image then&lt;br /&gt;
		image = getImageFromProperty( entityId, &amp;#039;P2910&amp;#039; )&lt;br /&gt;
		if image then&lt;br /&gt;
			size = &amp;#039;40x40px&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return image, size, border&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--Value function for [[d:Property:P166]]&lt;br /&gt;
function p.formatValue( context, options, statement )&lt;br /&gt;
	local entityId = statement.id&lt;br /&gt;
	if not entityId then&lt;br /&gt;
		return statement&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local label = mw.wikibase.getLabel( entityId )&lt;br /&gt;
	local image, size, border = p.getImageFromEntity( entityId )&lt;br /&gt;
&lt;br /&gt;
	local recipientCategory = &amp;#039;&amp;#039;&lt;br /&gt;
	if not options.nocat and options.nocat ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		recipientCategory = context.extractCategory( { category = &amp;#039;P7084[P4224:Q24571879]&amp;#039; }, entityId )&lt;br /&gt;
		if recipientCategory == &amp;#039;&amp;#039; then&lt;br /&gt;
			recipientCategory = context.extractCategory( { category = &amp;#039;P2517&amp;#039; }, entityId )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local dates = &amp;#039;&amp;#039;&lt;br /&gt;
	if options.qualifiers then&lt;br /&gt;
		local startDates = {}&lt;br /&gt;
		dates = datesFromQualifier( context, options, &amp;#039;P580&amp;#039; )&lt;br /&gt;
		if dates ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			local endDates = datesFromQualifier( context, options, &amp;#039;P582&amp;#039; )&lt;br /&gt;
			if endDates and endDates ~= &amp;#039;&amp;#039; then&lt;br /&gt;
				dates = dates .. &amp;#039; — &amp;#039; .. endDates&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			dates = datesFromQualifier( context, options, &amp;#039;P585&amp;#039; )&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if options.qualifiers.P27 then&lt;br /&gt;
mw.log(&amp;#039;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;#039;)&lt;br /&gt;
			for _, claim in ipairs( options.qualifiers.P27 ) do&lt;br /&gt;
				if claim and claim.datavalue and claim.datavalue.value and claim.datavalue.value.id then&lt;br /&gt;
					local categoryOptions = { category = &amp;#039;P7084[P27:&amp;#039; .. claim.datavalue.value.id .. &amp;#039;]&amp;#039; }&lt;br /&gt;
					recipientCategory = recipientCategory .. context.extractCategory( categoryOptions, entityId )&lt;br /&gt;
				end&lt;br /&gt;
			end &lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- получение ссылки по идентификатору и вывод планки&lt;br /&gt;
	if image then&lt;br /&gt;
		local link = mw.wikibase.getSitelink( entityId )&lt;br /&gt;
		local out = &amp;#039;[[File:&amp;#039; .. image&lt;br /&gt;
		if border == true then&lt;br /&gt;
			out = out .. &amp;#039;|border&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		out = out .. &amp;#039;|&amp;#039; .. size .. &amp;#039;|link=&amp;#039;&lt;br /&gt;
		&lt;br /&gt;
		-- получение ссылки из родительского элемента&lt;br /&gt;
		-- для степеней обычно только одна общая статья&lt;br /&gt;
		if not link then&lt;br /&gt;
			local partOfClaims = WDS.load( entityId, &amp;#039;P361&amp;#039; ) -- часть от&lt;br /&gt;
			if not partOfClaims or #partOfClaims == 0 then&lt;br /&gt;
				partOfClaims = WDS.load( entityId, &amp;#039;P279&amp;#039; ) -- подкласс от&lt;br /&gt;
			end&lt;br /&gt;
			if partOfClaims and #partOfClaims &amp;gt; 0 then&lt;br /&gt;
				for _, claim in ipairs( partOfClaims ) do&lt;br /&gt;
					if claim.type == &amp;#039;statement&amp;#039; and claim.mainsnak.snaktype == &amp;#039;value&amp;#039; then&lt;br /&gt;
						link = mw.wikibase.getSitelink( claim.mainsnak.datavalue.value.id )&lt;br /&gt;
						if link then&lt;br /&gt;
							break&lt;br /&gt;
						end&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if link then&lt;br /&gt;
			out = out .. link&lt;br /&gt;
		else&lt;br /&gt;
			out = out .. &amp;#039;d:&amp;#039; .. entityId&lt;br /&gt;
		end&lt;br /&gt;
		if label then&lt;br /&gt;
			out = out .. &amp;#039;|&amp;#039; .. label&lt;br /&gt;
		end&lt;br /&gt;
		out = out .. &amp;#039;]]&amp;#039;&lt;br /&gt;
		out = out .. recipientCategory&lt;br /&gt;
&lt;br /&gt;
		return out&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local out = context.formatValueDefault( context, options, statement )&lt;br /&gt;
	if out and out ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		if dates ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			out = out .. &amp;#039; (&amp;#039; .. dates .. &amp;#039;)&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		return &amp;#039;&amp;lt;span style=&amp;quot;display:inline-block; text-align:left&amp;gt;&amp;#039; .. out .. recipientCategory .. &amp;#039;&amp;lt;/span&amp;gt;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return &amp;#039;&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--Table for documentation&lt;br /&gt;
function p.renderDoc()&lt;br /&gt;
	local out = {}&lt;br /&gt;
	for i, awardFields in ipairs( awardsOrder.data ) do&lt;br /&gt;
		local awardId = awardFields[ 1 ]&lt;br /&gt;
		local link = &amp;#039;[[d:&amp;#039; .. awardId .. &amp;#039;|&amp;#039; .. awardId .. &amp;#039;]]&amp;#039;&lt;br /&gt;
&lt;br /&gt;
		if i == 351 then&lt;br /&gt;
			-- limits&lt;br /&gt;
			table.insert( out, &amp;#039;| … || … || … || … || …&amp;#039; )&lt;br /&gt;
		elseif i &amp;gt; 351 and i &amp;lt; #awardsOrder.data then&lt;br /&gt;
			-- do nothing&lt;br /&gt;
		elseif awardId == &amp;#039;-&amp;#039; then&lt;br /&gt;
			-- separator&lt;br /&gt;
			table.insert( out, &amp;#039;|&amp;#039; .. i .. &amp;#039;|| colspan=&amp;quot;3&amp;quot; | ----&amp;#039; )&lt;br /&gt;
		else&lt;br /&gt;
			local image, size, border = p.getImageFromEntity( awardId )&lt;br /&gt;
			if image then&lt;br /&gt;
				image = &amp;#039;[[File:&amp;#039; .. image&lt;br /&gt;
				if border == true then&lt;br /&gt;
					image = image .. &amp;#039;|border&amp;#039;&lt;br /&gt;
				end&lt;br /&gt;
				image = image .. &amp;#039;|&amp;#039; .. size .. &amp;#039;]]&amp;#039;&lt;br /&gt;
			else&lt;br /&gt;
				image = &amp;#039;&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			local label = mw.wikibase.getLabel( awardId ) or &amp;#039;&amp;#039;&lt;br /&gt;
			local article = mw.wikibase.getSitelink( awardId )&lt;br /&gt;
			if article then&lt;br /&gt;
				if label == &amp;#039;&amp;#039; then&lt;br /&gt;
					label = article&lt;br /&gt;
				end&lt;br /&gt;
				label = &amp;#039;[[&amp;#039; .. article .. &amp;#039;|&amp;#039; .. label .. &amp;#039;]]&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			local countryStatements = mw.wikibase.getBestStatements( awardId, &amp;#039;P17&amp;#039; )&lt;br /&gt;
			local countries = {}&lt;br /&gt;
			if countryStatements then&lt;br /&gt;
				for _, statement in ipairs( countryStatements ) do&lt;br /&gt;
					if statement.mainsnak.datavalue and&lt;br /&gt;
						statement.mainsnak.datavalue.type == &amp;#039;wikibase-entityid&amp;#039;&lt;br /&gt;
					then&lt;br /&gt;
						local countryId = statement.mainsnak.datavalue.value.id&lt;br /&gt;
						table.insert( countries, mw.wikibase.getLabel( countryId ) )&lt;br /&gt;
					end&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			table.insert( out, &amp;#039;|&amp;#039; .. i .. &amp;#039;||&amp;#039; .. link .. &amp;#039;||&amp;#039; .. image ..&lt;br /&gt;
				&amp;#039;||&amp;#039; .. label .. &amp;#039;||&amp;#039; .. table.concat( countries, &amp;#039;, &amp;#039; ) )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return &amp;#039;{| class=&amp;quot;wikitable&amp;quot;\n&amp;#039; ..&lt;br /&gt;
		&amp;#039;! # !! Элемент !! Планка !! Название !! Государство\n|-\n&amp;#039; ..&lt;br /&gt;
		table.concat( out, &amp;#039;\n|-\n&amp;#039; ) ..&lt;br /&gt;
		&amp;#039;\n|}&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Буквица&gt;Putnik</name></author>
	</entry>
</feed>