Модуль:DataDiagnostic

Материал из Eco - Русская Wiki
Перейти к:навигация, поиск

Для документации этого модуля может быть создана страница Модуль:DataDiagnostic/doc

local p = {}

local Utils = require('Module:Utils')
local Lang = Utils.getLanguageName()

function p.SubIndexPagesList()
		local WikiText =''
		local Index = Utils.Translate("Index")
		local Items = Utils.Translate("Items")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Items .. '|' .. Items .. ']]<br>'
		
		local Tags = Utils.Translate("Tags")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Tags .. '|' .. Tags .. ']]<br>'
		
		local Skills = Utils.Translate("Skills")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Skills .. '|' .. Skills .. ']]<br>'
		
		local Biomes = Utils.Translate("Biomes")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Biomes .. '|' .. Biomes .. ']]<br>'

		local Animals = Utils.Translate("Animals")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Animals .. '|' .. Animals .. ']]<br>'
		
		local Plants = Utils.Translate("Plants")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Plants .. '|' .. Plants .. ']]<br>'
		
		local Trees = Utils.Translate("Trees")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Trees .. '|' .. Trees .. ']]<br>'
		
		local Achievements = Utils.Translate("Achievements")
		local WikiText = WikiText .. '[['.. Index .. '/' .. Achievements .. '|' .. Achievements .. ']]<br>'
		
		return WikiText
end

function p.SubIndexItemsList()
		local WikiText =''
		
		local ItemData = mw.loadData("Module:ItemData")
		local ItemList = ItemData.items
		for Iname,Idata in pairs(ItemList) do
			if (Idata.Hidden ~= 'True') then
			local Color = "success"
			local Item = Idata.Name[Lang]
			local ItemEN = Idata.Name.English
			if ((Item == ItemEN) and (Lang ~= 'English')) then Color = "warning" end
			if (Item == '') then Color = "danger" end
			if (Color == 'danger') then String = Item else String = '[[' .. Item .. ']]' end
			String = '<span class="badge badge-' .. Color .. '">' .. String .. '</span>'
			WikiText = WikiText .. '<div class="col-xs-12 col-sm-6 col-md-4 col-lg-3">' .. String .. '</div>'
			end
		end
		
		WikiText = '<div class="container-fluid"><div class="row g-2 mb-3">' .. WikiText .. '</div></div>'
		WikiText =  '<h2>Items Page Diagnostic</h2>' .. WikiText
		
		return WikiText
end

function p.SubIndexTagsList()
		local WikiText =''
		
		local TagData = mw.loadData("Module:TagData")
		local TagList = TagData.tags
		
		for Tname,Tdata in pairs(TagList) do
			if (Tdata.IsVisibleInTooltip == 'True') then
				local Color = "success"
				local Tag = Tdata.Name[Lang]
				local TagEN = Tdata.Name.English
				local TagString = Utils.Translate("{0} Tag");
				local TagLink = Utils.VarSub(TagString,Tag);
				if ((Tag == TagEN) and (Lang ~= 'English')) then Color = "warning" end
				if (Tag == '') then Color = "danger" end
				if (Color == 'danger') then String = Tag else String = '[[' .. TagLink .. ']]' end
				String = '<span class="badge badge-' .. Color .. '">' .. String .. '</span>'
				WikiText = WikiText .. '<div class="col-xs-12 col-sm-6 col-md-4 col-lg-3">' .. String .. '</div>'
			end
		end
		
		WikiText = '<div class="container-fluid"><div class="row g-2 mb-3">' .. WikiText .. '</div></div>'
		WikiText =  '<h2>Tags Page Diagnostic</h2>' .. WikiText	
		
		return WikiText
end

function p.SubIndexSkillsList()
		local WikiText =''
		local Professions =''
		local Specialties =''
		
		local SkillData = mw.loadData("Module:SkillData")
		local SkillList = SkillData.skills
		
		for Sname,Sdata in pairs(SkillList) do
			local Color = "success"
			local Skill = Sdata.Name[Lang]
			local SkillEN = Sdata.Name.English
			if ((Skill == SkillEN) and (Lang ~= 'English')) then Color = "warning" end
			if (Skill == '') then Color = "danger" end
			if (Color == 'danger') then String = Skill else String = '[[' .. Skill .. ']]' end
			String = '<div class="col-xs-12 col-sm-6 col-md-4 col-lg-3"><span class="badge badge-' .. Color .. '">' .. String .. '</span></div>'
			if Sdata.IsRoot == 'True' then Professions = Professions .. String else Specialties = Specialties .. String end
		end
		
		WikiText = '<h2>Professions Page Diagnostic</h2><div class="container-fluid"><div class="row g-2 mb-3">' .. Professions .. '</div></div>'
		WikiText =  WikiText .. '<h2>Specialties Page Diagnostic</h2><div class="container-fluid"><div class="row g-2 mb-3">' .. Specialties .. '</div></div>'
		
		return WikiText
end

return p