Modulo:Categorie qualità

Da Uicchipèdie, 'a 'ngeclopedije lìbbere.

La documentazione per questo modulo può essere creata in Modulo:Categorie qualità/man

--[[
* Modulo che ritorna le categorie relative ai badge configurati su Wikidata.
]]

require('Module:No globals')

local p = {}

-- Associa al badge il nome della categoria da utilizzare (prefisso)
local catPrefix = {
	-- featured article
	Q17437796 = 'Vôsce jndr\'à vetrine',
	-- featured list
	Q17506997 = 'Vôsce jndr\'à vetrine',
	-- good article
	Q17437798 = 'Vôsce de qualitate'
}

function p.main(frame)
	local entity = mw.wikibase.getEntityObject()
	local textTable = {}
	if entity and entity.sitelinks then
		for siteId, links in pairs(entity.sitelinks) do
			-- itwiki è esclusa perché le categorie "Voci in vetrina su it.wiki" e "Voci di qualità su it.wiki"
			-- sono già aggiunte rispettivamente dai template Vetrina e Voce di qualità
			if siteId:match('wiki$') and siteId ~= 'roa_tarawiki' and links.badges then
				for i, badgeId in ipairs(links.badges) do
					if catPrefix[badgeId] then
						local catSiteId = string.sub(siteId:gsub('_', '-'), 0, -5)
						local cat = string.format('[[Category:%s sus a %s.wiki]]', catPrefix[badgeId], catSiteId)
						table.insert(textTable, cat)
					end
				end
			end
		end
		table.sort(textTable)
	end
	return table.concat(textTable)
end

return p