Відмінності між версіями «Модуль:CategoryForProfession»

[неперевірена версія][перевірена версія]
(Створена сторінка: local p = {} local ListOfProfessions = mw.loadData('Модуль:ListOfProfessions') local ListOfCountries = mw.loadData('Модуль:ListOfCountries') local...)
 
(наразі погано працює)
 
(Не показана 1 проміжна версія ще одного користувача)
Рядок 2: Рядок 2:
   
 
local ListOfProfessions = mw.loadData('Модуль:ListOfProfessions')
 
local ListOfProfessions = mw.loadData('Модуль:ListOfProfessions')
local ListOfCountries = mw.loadData('Модуль:ListOfCountries')
+
--local ListOfCountries = mw.loadData('Модуль:ListOfCountries')
   
 
local ProfessionsCategoryByAlphabet = {}
 
local ProfessionsCategoryByAlphabet = {}
Рядок 9: Рядок 9:
 
end
 
end
   
local ProfessionsCategoriesByCountry = {}
+
--[[local ProfessionsCategoriesByCountry = {}
 
local QQQ = {}
 
local QQQ = {}
 
for i, j in pairs(ListOfCountries) do
 
for i, j in pairs(ListOfCountries) do
 
QQQ = {}
 
QQQ = {}
for k, v in pairs(ListOfProfessions) do
+
for k, v in pairs(ListOfProfessions) do--]]
QQQ[k] = '[[Категорія:' .. v ..' ' .. j ..']]'
+
--QQQ[k] = '[[Категорія:' .. j ..' ' .. v ..']]'
end
+
--[[end
 
ProfessionsCategoriesByCountry[i] = QQQ
 
ProfessionsCategoriesByCountry[i] = QQQ
end
+
end--]]
   
 
local function MakeGeneralCategories(professionsList, dict)
 
local function MakeGeneralCategories(professionsList, dict)
Рядок 30: Рядок 30:
 
return res
 
return res
 
end
 
end
  +
--[[
 
 
local function MakeCountriesCategories(countriesList, professionsList)
 
local function MakeCountriesCategories(countriesList, professionsList)
 
local res = ''
 
local res = ''
Рядок 44: Рядок 44:
 
return res
 
return res
 
end
 
end
  +
]]--
 
 
function p.mainFunction()
 
function p.mainFunction()
 
local result = ''
 
local result = ''
Рядок 52: Рядок 52:
 
professions = entity.claims[ 'P106' ]
 
professions = entity.claims[ 'P106' ]
 
result = result .. MakeGeneralCategories(professions, ProfessionsCategoryByAlphabet)
 
result = result .. MakeGeneralCategories(professions, ProfessionsCategoryByAlphabet)
if entity.claims[ 'P27' ] ~= nil then
+
--[[if entity.claims[ 'P27' ] ~= nil then
 
countries = entity.claims[ 'P27' ]
 
countries = entity.claims[ 'P27' ]
 
result = result .. MakeCountriesCategories(countries, professions)
 
result = result .. MakeCountriesCategories(countries, professions)
end
+
end--]]
 
end
 
end
 
end
 
end

Поточна версія на 14:04, 21 квітня 2021

local p = {}

local ListOfProfessions = mw.loadData('Модуль:ListOfProfessions')
--local ListOfCountries = mw.loadData('Модуль:ListOfCountries')

local ProfessionsCategoryByAlphabet = {}
for k, v in pairs(ListOfProfessions) do
	ProfessionsCategoryByAlphabet[k] = '[[Категорія:' .. v .. ' за алфавітом]]'
end

--[[local ProfessionsCategoriesByCountry = {}
local QQQ = {}
for i, j in pairs(ListOfCountries) do
	QQQ = {}
	for k, v in pairs(ListOfProfessions) do--]]
		--QQQ[k] = '[[Категорія:' .. j ..' ' .. v ..']]'
	--[[end
	ProfessionsCategoriesByCountry[i] = QQQ
end--]]

local function MakeGeneralCategories(professionsList, dict)
	local res = ''
	for i, prof in pairs(professionsList) do
		id = 'Q' .. prof.mainsnak.datavalue.value['numeric-id']
		local cat = dict[id];
		if cat ~= nil then
			res = res .. cat;	
		end
	end
    return res
end
--[[
local function MakeCountriesCategories(countriesList, professionsList)
	local res = ''
	for i, cant in pairs(countriesList) do
		if cant.mainsnak.datavalue ~= nil then
			id = 'Q' .. cant.mainsnak.datavalue.value['numeric-id']
			local professionsCategories = ProfessionsCategoriesByCountry[id];
			if professionsCategories ~= nil then
				res = res .. MakeGeneralCategories(professionsList, professionsCategories);
			end
		end
	end
    return res
end
]]--
function p.mainFunction()
	local result = ''
	local entity = mw.wikibase.getEntityObject()
	if entity ~= nil and entity.claims ~= nil then
		if entity.claims[ 'P106' ] ~= nil then
			professions = entity.claims[ 'P106' ]
			result = result .. MakeGeneralCategories(professions, ProfessionsCategoryByAlphabet)
			--[[if entity.claims[ 'P27' ] ~= nil then
				countries = entity.claims[ 'P27' ]
				result = result .. MakeCountriesCategories(countries, professions)
			end--]]
		end
	end
	return result
end

return p