Módulu:Categorización de bonos y destacaos

La documentación pa esti módulu pue crease en Módulu:Categorización de bonos y destacaos/usu

local p = { }

local badgesList = {
	Q6540291 = 'portales destacaos',
	Q6540326 = 'tema destacáu',
	Q17437796 = 'artículu destacáu',
	Q17437798 = 'artículu bonu',
	Q17506997 = 'anexu destacáu',
	Q17507019 = 'Sabíes que',
	Q17559452 = 'artículu recomendáu',
	Q17580674 = 'portal destacáu',
	Q17580678 = 'artículu de calidá alta',
	Q17580679 = 'artículu de calidá media',
	Q17580680 = 'artículu de calidá baxa',
	Q17580682 = 'artículu d\'alta importancia',
}

local badgesCategory = {
	Q17437796 = 'Wikipedia:Artículos destacaos',
	Q17437798 = 'Wikipedia:Artículos bonos',
	Q17506997 = 'Wikipedia:Anexos destacaos',
}

local linkCategoryPrefix = { 
	default = '',
}

local linkCategorySuffix = { 
	default = ' n\'otres ediciones de Wikipedia',
	afwiki = ' na Wikipedia n\'afrikáans',
	alswiki = ' na Wikipedia n\'alemánicu',
	amwiki = ' na Wikipedia n\'amháricu',
	anwiki = ' na Wikipedia n\'aragonés',
	arwiki = ' na Wikipedia en árabe',
	arzwiki = ' na Wikipedia en árabe exipciu',
	astwiki = '',
	aswiki = ' na Wikipedia n\'asamés',
	azwiki = ' na Wikipedia n\'azerbaixanu',
	bawiki = ' na Wikipedia en baskir',
	barwiki = ' na Wikipedia n\'austro-bávaru',
	bat_smgwiki = ' na Wikipedia en samoxitianu',
	bewiki = ' na Wikipedia en bielorrusu',
	be_taraskwiki = ' na Wikipedia en bielorrusu (taraškievica)',
	bgwiki = ' na Wikipedia en búlgaru',
	bnwiki = ' na Wikipedia en bengalín',
	bpywiki = ' na Wikipedia en bishnupriya manipuri',
	brwiki = ' na Wikipedia en bretón',
	bswiki = ' na Wikipedia en bosniu',
	cawiki = ' na Wikipedia en catalán',
	cebwiki = ' na Wikipedia en cebuanu',
	cewiki = ' na Wikipedia en chechenu',
	cswiki = ' na Wikipedia en checu',
	cvwiki = ' na Wikipedia en chuvasiu',
	cywiki = ' na Wikipedia en galés',
	dawiki = ' na Wikipedia en danés',
	dewiki = ' na Wikipedia n\'alemán',
	diqwiki = ' na Wikipedia en zazaki',
	dvwiki = ' na Wikipedia en divehi',
	elwiki = ' na Wikipedia en griegu',
	simplewiki = ' na Wikipedia n\'inglés simple',
	enwiki = ' na Wikipedia n\'inglés',
	eowiki = ' na Wikipedia n\'esperantu',
	eswiki = ' na Wikipedia en castellanu',
	etwiki = ' na Wikipedia n\'estoniu',
	euwiki = ' na Wikipedia n\'euskera',
	extwiki = ' na Wikipedia n\'estremeñu',
	fawiki = ' na Wikipedia en persa',
	fiwiki = ' na Wikipedia en finés',
	fowiki = ' na Wikipedia en feroés',
	frwiki = ' na Wikipedia en francés',
	frrwiki = ' na Wikipedia en frisón septentrional',
	fywiki = ' na Wikipedia en frisón',
	gawiki = ' na Wikipedia n\'irlandés',
	gdwiki = ' na Wikipedia en gaélicu escocés',
	glwiki = ' na Wikipedia en gallegu',
	guwiki = ' na Wikipedia en guyaratí',
	gvwiki = ' na Wikipedia en manés',
	hewiki = ' na Wikipedia n\'hebreu',
	hiwiki = ' na Wikipedia n\'hindi',
	hrwiki = ' na Wikipedia en croata',
	hsbwiki = ' na Wikipedia n\'altu sorabu',
	htwiki = ' na Wikipedia en criollu haitianu',
	huwiki = ' na Wikipedia n\'húngaru',
	hywiki = ' na Wikipedia n\'armeniu',
	iawiki = ' na Wikipedia n\'interlingua',
	idwiki = ' na Wikipedia n\'indonesiu',
	iswiki = ' na Wikipedia n\'islandés',
	itwiki = ' na Wikipedia n\'italianu',
	jawiki = ' na Wikipedia en xaponés',
	jvwiki = ' na Wikipedia en xavanés',
	kawiki = ' na Wikipedia en xeorxanu',
	klwiki = ' na Wikipedia en groenlandés',
	kkwiki = ' na Wikipedia en kazaxu',
	kmwiki = ' na Wikipedia en camboyanu',
	knwiki = ' na Wikipedia en canarés',
	kowiki = ' na Wikipedia en coreanu',
	krcwiki = ' na Wikipedia en karachayo-bálkaru',
	kuwiki = ' na Wikipedia en kurdu',
	kvwiki = ' na Wikipedia en komi',
	lawiki = ' na Wikipedia natín',
	lbwiki = ' na Wikipedia en luxemburgués',
	lezwiki = ' na Wikipedia en lezgianu',
	liwiki = ' na Wikipedia en limburgués',
	lmowiki = ' na Wikipedia en lombardu',
	lowiki = ' na Wikipedia naosianu',
	ltwiki = ' na Wikipedia en lituanu',
	lvwiki = ' na Wikipedia en letón',
	map_bmswiki = ' na Wikipedia en banyumasan',
	mgwiki = ' na Wikipedia en malgache',
	minwiki = ' na Wikipedia en minangkabau',
	mkwiki = ' na Wikipedia en macedoniu',
	mlwiki = ' na Wikipedia en malayalam',
	mrwiki = ' na Wikipedia en maratí',
	mswiki = ' na Wikipedia en malayu',
	mtwiki = ' na Wikipedia en maltés',
	mwlwiki = ' na Wikipedia en mirandés',
	mywiki = ' na Wikipedia en birmanu',
	nahwiki = ' na Wikipedia en náhuatl',
	napwiki = ' na Wikipedia en napolitanu',
	nds_nlwiki = ' na Wikipedia en baxu saxón neerlandés',
	nlwiki = ' na Wikipedia en neerlandés',
	nnwiki = ' na Wikipedia en noruegu (nynorsk)',
	nowiki = ' na Wikipedia en noruegu (bokmål)',
	nvwiki = ' na Wikipedia en navayu',
	ocwiki = ' na Wikipedia n\'occitanu',
	orwiki = ' na Wikipedia n\'oriya',
	oswiki = ' na Wikipedia n\'osetiu',
	pamwiki = ' na Wikipedia en pamganu',
	piwiki = ' na Wikipedia en pali',
	plwiki = ' na Wikipedia en polacu',
	ptwiki = ' na Wikipedia en portugués',
	quwiki = ' na Wikipedia en quechua',
	rowiki = ' na Wikipedia en rumanu',
	ruwiki = ' na Wikipedia en rusu',
	sawiki = ' na Wikipedia en sánscritu',
	scnwiki = ' na Wikipedia en sicilianu',
	scowiki = ' na Wikipedia n\'escocés',
	shwiki = ' na Wikipedia en serbocroata',
	skwiki = ' na Wikipedia n\'eslovacu',
	slwiki = ' na Wikipedia n\'eslovenu',
	sqwiki = ' na Wikipedia n\'albanés',
	srwiki = ' na Wikipedia en serbiu',
	srnwiki = ' na Wikipedia en sranan tongo',
	stqwiki = ' na Wikipedia en frisón del Saterland',
	svwiki = ' na Wikipedia en suecu',
	swwiki = ' na Wikipedia en suaḥili',
	szlwiki = ' na Wikipedia en silesianu',
	tawiki = ' na Wikipedia en tamil',
	tewiki = ' na Wikipedia en telugú',
	thwiki = ' na Wikipedia en tailandés',
	tlwiki = ' na Wikipedia en tagalu',
	tnwiki = ' na Wikipedia en setsuana',
	trwiki = ' na Wikipedia en turcu',
	ttwiki = ' na Wikipedia en tártaru',
	ukwiki = ' na Wikipedia n\'ucraín',
	urwiki = ' na Wikipedia n\'urdú',
	uzwiki = ' na Wikipedia n\'uzbecu',
	vecwiki = ' na Wikipedia en vénetu',
	vepwiki = ' na Wikipedia en vepsiu',
	viwiki = ' na Wikipedia en vietnamita',
	vlswiki = ' na Wikipedia en flamencu occidental',
	vowiki = ' na Wikipedia en volapük',
	wawiki = ' na Wikipedia en valón',
	warwiki = ' na Wikipedia en samareñu',
	yiwiki = ' na Wikipedia en yidis',
	yowiki = ' na Wikipedia en yoruba',
	zhwiki = ' na Wikipedia en chinu',
	zh_classicalwiki = ' na Wikipedia en chinu clásicu',
	zh_min_nanwiki = ' na Wikipedia en chinu min nan',
	zh_yuewiki = ' na Wikipedia en cantonés',
}

function p.badgesCategories( frame )
	local entity = mw.wikibase.getEntityObject()
	local wikitext = {}
	local categoryNs = mw.site.namespaces[14].name
        if not entity then
                return ''
        end
	
	for siteid, linkTable in pairs( entity.sitelinks ) do
		for i, badgeId in ipairs( entity.sitelinks[ siteid ].badges ) do
			if badgesCategory[ badgeId ] and string.sub(siteid, -4) == 'wiki' then
				local prefix = linkCategoryPrefix[ siteid ] or linkCategoryPrefix.default or ''
				local main = badgesCategory[ badgeId ] or ''
				local suffix = linkCategorySuffix[ siteid ] or linkCategorySuffix.default or ''
				local category = string.format('[[%s:%s]]', categoryNs, prefix .. main .. suffix )
				table.insert( wikitext, category )
			end
		end
	end
	return table.concat( wikitext )
end

function p.hasAnyBadge( frame )
        local entity = mw.wikibase.getEntityObject()
        if not entity then
                return ''
        end
        for siteid, linkTable in pairs( entity.sitelinks ) do
                if next(entity.sitelinks[ siteid ].badges) ~= nil then
                        return '1'
                end
        end
        return ''
end

return p