« Module:Catégorisation badges » : différence entre les versions

Une page de Wikipédia, l'encyclopédie libre.
Contenu supprimé Contenu ajouté
Zebulon84 (discuter | contributions)
Nouvelle page : local p = { } local badgesList = { Q6540291 = 'portail de qualité', Q6540326 = 'thème de qualité', Q17437796 = 'article de qualité', Q17437798 = 'bon article', Q17506997...
 
m il ne faut pas confondre identifiant d'entité et expression d'entité sinon on va déjà mal partir
 
(28 versions intermédiaires par 6 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
local p = { }
local p = { }


--[=[
local badgesList = {
local badgesList = {
Q6540291 = 'portail de qualité',
Q6540291 = 'portail de qualité',
Ligne 15 : Ligne 16 :
Q17580682 = 'Top-importance articles',
Q17580682 = 'Top-importance articles',
}
}
]=]


local badgesCategory = {
local badgesCategory = {
Ligne 22 : Ligne 24 :
}
}


local default = 'dans une autre langue'
local linkCategoryPrefix = {
local linkCategorySuffix = {
default = '',
-- cf. https://meta.wikimedia.org/wiki/List_of_Wikipedias (les wiki avec moins de 5 000 articles sans catégorie dédièe ont été ignorés)
}
abwiki = default,

acewiki = default,
local linkCategorySuffix = {
afwiki = 'en afrikaans',
defaultwiki = ' dans une autre langue',
afwiki = ' en afrikaans',
alswiki = 'en alsacien',
alswiki = ' en alsacien',
amwiki = 'en amharique',
amwiki = ' en amharique',
anwiki = 'en aragonais',
anwiki = ' en aragonais',
arwiki = 'en arabe',
arwiki = ' en arabe',
arywiki = default,
arzwiki = ' en arabe égyptien',
arzwiki = 'en arabe égyptien',
astwiki = ' en asturien',
aswiki = 'en assamais',
azwiki = ' en azéri',
astwiki = 'en asturien',
avkwiki = default,
bawiki = ' en bachkir',
aywiki = default,
barwiki = ' en bavarois',
bat_smgwiki = ' en samogitien',
azwiki = 'en azéri',
azbwiki = default,
bewiki = ' en biélorusse',
be_x_oldwiki = ' en biélorusse',
bawiki = 'en bachkir',
banwiki = default,
bgwiki = ' en bulgare',
bnwiki = ' en bengali',
barwiki = 'en bavarois',
bpywiki = ' en bishnupriya',
bat_smgwiki = 'en samogitien',
brwiki = ' en breton',
bclwiki = default,
bswiki = ' en bosnien',
bewiki = 'en biélorusse',
be_x_oldwiki = 'en biélorusse', -- https://be-tarask.wikipedia.org, mais son code interne est be_x_oldwiki
cawiki = ' en catalan',
cebwiki = ' en cebuano',
bgwiki = 'en bulgare',
bhwiki = default,
cswiki = ' en tchèque',
bjnwiki = default,
cvwiki = ' en tchouvache',
cywiki = ' en gallois',
bnwiki = 'en bengali',
dawiki = ' en danois',
bowiki = default,
dewiki = ' en allemand',
bpywiki = 'en bishnupriya',
diqwiki = ' en zazaki',
brwiki = 'en breton',
dvwiki = ' en divehi',
bswiki = 'en bosnien',
elwiki = ' en grec',
bugwiki = default,
simplewiki = ' en anglais',
bxrwiki = 'en bouriate',
enwiki = ' en anglais',
cawiki = 'en catalan',
eowiki = ' en espéranto',
cdowiki = 'en mindong',
eswiki = ' en espagnol',
cewiki = 'en tchétchène',
etwiki = ' en estonien',
cebwiki = 'en cebuano',
euwiki = ' en basque',
ckbwiki = 'en sorani',
cowiki = default,
extwiki = ' en estrémègne',
fawiki = ' en persan',
crhwiki = default,
fiwiki = ' en finnois',
cswiki = 'en tchèque',
csbwiki = default,
fowiki = ' en féroïen',
frrwiki = ' en frison septentrional',
cvwiki = 'en tchouvache',
fywiki = ' en frison occidental',
cywiki = 'en gallois',
gawiki = ' en irlandais',
dawiki = 'en danois',
dagwiki = default,
gdwiki = ' en gaélique écossais',
glwiki = ' en galicien',
dewiki = 'en allemand',
guwiki = ' en gujarati',
diqwiki = 'en zazaki',
gvwiki = ' en mannois',
dvwiki = 'en divehi',
hewiki = ' en hébreu',
elwiki = 'en grec',
hiwiki = ' en hindi',
emlwiki = default,
hrwiki = ' en croate',
simplewiki = 'en anglais',
htwiki = ' en haïtien',
enwiki = 'en anglais',
huwiki = ' en hongrois',
eowiki = 'en espéranto',
hywiki = ' en arménien',
eswiki = 'en espagnol',
iawiki = ' en interlingua',
etwiki = 'en estonien',
idwiki = ' en indonésien',
euwiki = 'en basque',
iswiki = ' en islandais',
extwiki = 'en estrémègne',
itwiki = ' en italien',
fawiki = 'en persan',
jawiki = ' en japonais',
fiwiki = 'en finnois',
['fiu-vrowiki'] = default,
jvwiki = ' en javanais',
kawiki = ' en géorgien',
fowiki = 'en féroïen',
frpwiki = default,
klwiki = ' en groenlandais',
kkwiki = ' en kazakh',
frrwiki = 'en frison septentrional',
kmwiki = ' en khmer',
fywiki = 'en frison occidental',
knwiki = ' en kannada',
gawiki = 'en irlandais',
ganwiki = default,
kowiki = ' en coréen',
krcwiki = ' en karatchaï balkar',
gdwiki = 'en gaélique écossais',
kuwiki = ' en kurde',
glwiki = 'en galicien',
kvwiki = ' en komi',
glkwiki = default,
lawiki = ' en latin',
gnwiki = default,
gorwiki = default,
lbwiki = ' en luxembourgeois',
liwiki = ' en limbourgeois',
guwiki = 'en gujarati',
lmowiki = ' en lombard',
gvwiki = 'en mannois',
lowiki = ' en lao',
hawiki = default,
hakwiki = default,
ltwiki = ' en lituanien',
lvwiki = ' en letton',
hewiki = 'en hébreu',
map_bmswiki = ' en banyumasan',
hiwiki = 'en hindi',
hifwiki = default,
mgwiki = ' en malgache',
mkwiki = ' en macédonien',
hrwiki = 'en croate',
hsbwiki = default,
mlwiki = ' en malayâlam',
mrwiki = ' en marâthî',
htwiki = 'en haïtien',
mswiki = ' en malais',
huwiki = 'en hongrois',
mtwiki = ' en maltais',
hywiki = 'en arménien',
mywiki = ' en birman',
hywwiki = default,
nahwiki = ' en nahuatl',
iawiki = 'en interlingua',
nds_nlwiki = ' en bas-saxon néerlandais',
idwiki = 'en indonésien',
iewiki = default,
nlwiki = ' en néerlandais',
igwiki = default,
nnwiki = ' en norvégien nynorsk',
ilowiki = default,
nowiki = ' en norvégien',
ocwiki = ' en occitan',
iowiki = default,
piwiki = ' en pali',
iswiki = 'en islandais',
plwiki = ' en polonais',
itwiki = 'en italien',
ptwiki = ' en portugais',
jawiki = 'en japonais',
quwiki = ' en quechua',
jvwiki = 'en javanais',
rowiki = ' en roumain',
kawiki = 'en géorgien',
ruwiki = ' en russe ',
kabwiki = default,
sawiki = ' en sanskrit',
kkwiki = 'en kazakh',
scowiki = ' en scots',
klwiki = 'en groenlandais',
shwiki = ' en serbo-croate',
kmwiki = 'en khmer',
skwiki = ' en slovaque',
knwiki = 'en kannada',
slwiki = ' en slovène',
kowiki = 'en coréen',
sqwiki = ' en albanais',
krcwiki = 'en karatchaï balkar',
srwiki = ' en serbe',
kuwiki = 'en kurde',
svwiki = ' en suédois',
kvwiki = 'en komi',
swwiki = ' en swahili',
kwwiki = default,
kywiki = default,
szlwiki = ' en silésien',
uzwiki = ' en ouzbek',
lawiki = 'en latin',
tawiki = ' en tamoul',
lbwiki = 'en luxembourgeois',
tewiki = ' en télougou',
liwiki = 'en limbourgeois',
thwiki = ' en thaï',
lijwiki = default,
lldwiki = default,
tlwiki = ' en tagalog',
tnwiki = ' en tswana',
lmowiki = 'en lombard',
trwiki = ' en turc',
lowiki = 'en lao',
ttwiki = ' en tatar',
ltwiki = 'en lituanien',
ukwiki = ' en ukrainien',
lvwiki = 'en letton',
urwiki = ' en ourdou',
maiwiki = 'en maïthili',
uzwiki = ' en ouzbek',
map_bmswiki = 'en banyumasan',
vecwiki = ' en vénitien',
mgwiki = 'en malgache',
mhrwiki = default,
viwiki = ' en vietnamien',
miwiki = default,
vowiki = ' en volapük',
wawiki = ' en wallon',
minwiki = default,
warwiki = ' en waray-waray',
mkwiki = 'en macédonien',
yiwiki = ' en yiddish',
mlwiki = 'en malayâlam',
yowiki = ' en yoruba',
mnwiki = 'en mongol',
mniwiki = default,
zhwiki = ' en chinois',
zh_classicalwiki = ' en chinois classique',
mrwiki = 'en marâthî',
mrjwiki = default,
zh_min_nanwiki = ' en minnan',
zh_yuewiki = ' en cantonais',
mswiki = 'en malais',
mtwiki = 'en maltais',
mywiki = 'en birman',
myvwiki = default,
mznwiki = 'en mazandarani',
nahwiki = 'en nahuatl',
napwiki = default,
ndswiki = default,
nds_nlwiki = 'en bas-saxon néerlandais',
newiki = 'en népalais',
newwiki = default,
nlwiki = 'en néerlandais',
nnwiki = 'en norvégien nynorsk',
nowiki = 'en norvégien',
nsowiki = default,
nvwiki = default,
ocwiki = 'en occitan',
orwiki = default,
oswiki = default,
pawiki = default,
pamwiki = 'en pampangan',
pcdwiki = default,
piwiki = 'en pali',
plwiki = 'en polonais',
pmswiki = default,
pnbwiki = default,
pswiki = default,
ptwiki = 'en portugais',
quwiki = 'en quechua',
rowiki = 'en roumain',
['roa-tarawiki'] = default,
ruwiki = 'en russe ',
ruewiki = default,
sawiki = 'en sanskrit',
sahwiki = default,
satwiki = default,
scwiki = default,
scnwiki = 'en sicilien',
scowiki = 'en scots',
sdwiki = 'en sindhi',
sewiki = default,
shwiki = 'en serbo-croate',
shnwiki = default,
siwiki = 'en cingalais',
skwiki = 'en slovaque',
skrwiki = default,
slwiki = 'en slovène',
smnwiki = default,
snwiki = default,
sowiki = default,
sqwiki = 'en albanais',
srwiki = 'en serbe',
suwiki = 'en soudanais',
svwiki = 'en suédois',
swwiki = 'en swahili',
szlwiki = 'en silésien',
tawiki = 'en tamoul',
tewiki = 'en télougou',
tgwiki = default,
thwiki = 'en thaï',
tkwiki = default,
tlwiki = 'en tagalog',
tnwiki = 'en tswana',
trwiki = 'en turc',
ttwiki = 'en tatar',
tumwiki = default,
udmwiki = default,
ugwiki = default,
ukwiki = 'en ukrainien',
urwiki = 'en ourdou',
uzwiki = 'en ouzbek',
vecwiki = 'en vénitien',
vepwiki = default,
viwiki = 'en vietnamien',
vlswiki = 'en flamand occidental',
vowiki = 'en volapük',
wawiki = 'en wallon',
warwiki = 'en waray-waray',
wuuwiki = default,
xmfwiki = 'en mingrélien',
yiwiki = 'en yiddish',
yowiki = 'en yoruba',
zeawiki = default,
zhwiki = 'en chinois',
zh_classicalwiki = 'en chinois classique',
zh_min_nanwiki = 'en minnan',
zh_yuewiki = 'en cantonais',
zuwiki = default,
}
}


function p.badgesCategories( frame )
function p.badgesCategories( frame )
local entity = mw.wikibase.getEntityObject()
local entityId = mw.wikibase.getEntityIdForCurrentPage()
local wikitext = {}
local wikitext = {}
local categoryNs = mw.site.namespaces[14].name
local categoryNs = mw.site.namespaces[14].name
if not entityId then
return ''
for siteid, linkTable in pairs( entity.sitelinks ) do
end
for i, badgeId in ipairs( entity.sitelinks[ siteid ].badges ) do

if badgesCategoryPrefix[ badgeId ] then
for siteId, suffix in pairs( linkCategorySuffix ) do
local prefix = linkCategoryPrefix[ siteid ] or linkCategoryPrefix.default or ''
local main = badgesCategory[ badgeId ] or ''
local badges = mw.wikibase.getBadges( entityId, siteId )
for i, badgeId in ipairs( badges ) do
local suffix = linkCategorySuffix[ siteid ] or linkCategorySuffix.default or ''
if badgesCategory[ badgeId ] then
local category = string.format('[[:%s:%s]]', categoryNs, prefix .. main .. suffix )
local main = badgesCategory[ badgeId ]
table.insert( wikitext, category )
local category = string.format('[[%s:%s]]', categoryNs, main .. ' ' .. suffix )
table.insert( wikitext, category )
end
end
end
end
end
end
return table.concat( wikitext )
return table.concat( wikitext )
end
end

Dernière version du 11 mars 2023 à 22:50

 Documentation[voir] [modifier] [historique] [purger]

Ce module permet de catégoriser les pages ayant un label de qualité dans une autre langue. Voir Catégorie:Article de qualité dans une autre langue.

Il est appelé par le modèle {{Portail}} via le modèle {{Catégorisation badges}}.




local p = { }

--[=[
local badgesList = {
	Q6540291 = 'portail de qualité',
	Q6540326 = 'thème de qualité',
	Q17437796 = 'article de qualité',
	Q17437798 = 'bon article',
	Q17506997 = 'liste de qualité',
	Q17507019 = 'Le saviez-vous',
	Q17559452 = 'recommended article',
	Q17580674 = 'featured portal',
	Q17580678 = 'A-Class articles',
	Q17580679 = 'B-Class articles',
	Q17580680 = 'C-Class articles',
	Q17580682 = 'Top-importance articles',
}
]=]

local badgesCategory = {
	Q17437796 = 'Article de qualité',
	Q17437798 = 'Bon article',
	Q17506997 = 'Article de qualité'  -- 'liste de qualité',
}

local default = 'dans une autre langue'
local linkCategorySuffix = {
	-- cf. https://meta.wikimedia.org/wiki/List_of_Wikipedias (les wiki avec moins de 5 000 articles sans catégorie dédièe ont été ignorés)
	abwiki = default,
	acewiki = default,
	afwiki = 'en afrikaans',
	alswiki = 'en alsacien',
	amwiki = 'en amharique',
	anwiki = 'en aragonais',
	arwiki = 'en arabe',
	arywiki = default,
	arzwiki = 'en arabe égyptien',
	aswiki = 'en assamais',
	astwiki = 'en asturien',
	avkwiki = default,
	aywiki = default,
	azwiki = 'en azéri',
	azbwiki = default,
	bawiki = 'en bachkir',
	banwiki = default,
	barwiki = 'en bavarois',
	bat_smgwiki = 'en samogitien',
	bclwiki = default,
	bewiki = 'en biélorusse',
	be_x_oldwiki = 'en biélorusse',   -- https://be-tarask.wikipedia.org, mais son code interne est  be_x_oldwiki
	bgwiki = 'en bulgare',
	bhwiki = default,
	bjnwiki = default,
	bnwiki = 'en bengali',
	bowiki = default,
	bpywiki = 'en bishnupriya',
	brwiki = 'en breton',
	bswiki = 'en bosnien',
	bugwiki = default,
	bxrwiki = 'en bouriate',
	cawiki = 'en catalan',
	cdowiki = 'en mindong',
	cewiki = 'en tchétchène',
	cebwiki = 'en cebuano',
	ckbwiki = 'en sorani',
	cowiki = default,
	crhwiki = default,
	cswiki = 'en tchèque',
	csbwiki = default,
	cvwiki = 'en tchouvache',
	cywiki = 'en gallois',
	dawiki = 'en danois',
	dagwiki = default,
	dewiki = 'en allemand',
	diqwiki = 'en zazaki',
	dvwiki = 'en divehi',
	elwiki = 'en grec',
	emlwiki = default,
	simplewiki = 'en anglais',
	enwiki = 'en anglais',
	eowiki = 'en espéranto',
	eswiki = 'en espagnol',
	etwiki = 'en estonien',
	euwiki = 'en basque',
	extwiki = 'en estrémègne',
	fawiki = 'en persan',
	fiwiki = 'en finnois',
	['fiu-vrowiki'] = default,
	fowiki = 'en féroïen',
	frpwiki = default,
	frrwiki = 'en frison septentrional',
	fywiki = 'en frison occidental',
	gawiki = 'en irlandais',
	ganwiki = default,
	gdwiki = 'en gaélique écossais',
	glwiki = 'en galicien',
	glkwiki = default,
	gnwiki = default,
	gorwiki = default,
	guwiki = 'en gujarati',
	gvwiki = 'en mannois',
	hawiki = default,
	hakwiki = default,
	hewiki = 'en hébreu',
	hiwiki = 'en hindi',
	hifwiki = default,
	hrwiki = 'en croate',
	hsbwiki = default,
	htwiki = 'en haïtien',
	huwiki = 'en hongrois',
	hywiki = 'en arménien',
	hywwiki = default,
	iawiki = 'en interlingua',
	idwiki = 'en indonésien',
	iewiki = default,
	igwiki = default,
	ilowiki = default,
	iowiki = default,
	iswiki = 'en islandais',
	itwiki = 'en italien',
	jawiki = 'en japonais',
	jvwiki = 'en javanais',
	kawiki = 'en géorgien',
	kabwiki = default,
	kkwiki = 'en kazakh',
	klwiki = 'en groenlandais',
	kmwiki = 'en khmer',
	knwiki = 'en kannada',
	kowiki = 'en coréen',
	krcwiki = 'en karatchaï balkar',
	kuwiki = 'en kurde',
	kvwiki = 'en komi',
	kwwiki = default,
	kywiki = default,
	lawiki = 'en latin',
	lbwiki = 'en luxembourgeois',
	liwiki = 'en limbourgeois',
	lijwiki = default,
	lldwiki = default,
	lmowiki = 'en lombard',
	lowiki = 'en lao',
	ltwiki = 'en lituanien',
	lvwiki = 'en letton',
	maiwiki = 'en maïthili',
	map_bmswiki = 'en banyumasan',
	mgwiki = 'en malgache',
	mhrwiki = default,
	miwiki = default,
	minwiki = default,
	mkwiki = 'en macédonien',
	mlwiki = 'en malayâlam',
	mnwiki = 'en mongol',
	mniwiki = default,
	mrwiki = 'en marâthî',
	mrjwiki = default,
	mswiki = 'en malais',
	mtwiki = 'en maltais',
	mywiki = 'en birman',
	myvwiki = default,
	mznwiki = 'en mazandarani',
	nahwiki = 'en nahuatl',
	napwiki = default,
	ndswiki = default,
	nds_nlwiki = 'en bas-saxon néerlandais',
	newiki = 'en népalais',
	newwiki = default,
	nlwiki = 'en néerlandais',
	nnwiki = 'en norvégien nynorsk',
	nowiki = 'en norvégien',
	nsowiki = default,
	nvwiki = default,
	ocwiki = 'en occitan',
	orwiki = default,
	oswiki = default,
	pawiki = default,
	pamwiki = 'en pampangan',
	pcdwiki = default,
	piwiki = 'en pali',
	plwiki = 'en polonais',
	pmswiki = default,
	pnbwiki = default,
	pswiki = default,
	ptwiki = 'en portugais',
	quwiki = 'en quechua',
	rowiki = 'en roumain',
	['roa-tarawiki'] = default,
	ruwiki = 'en russe ',
	ruewiki = default,
	sawiki = 'en sanskrit',
	sahwiki = default,
	satwiki = default,
	scwiki = default,
	scnwiki = 'en sicilien',
	scowiki = 'en scots',
	sdwiki = 'en sindhi',
	sewiki = default,
	shwiki = 'en serbo-croate',
	shnwiki = default,
	siwiki = 'en cingalais',
	skwiki = 'en slovaque',
	skrwiki = default,
	slwiki = 'en slovène',
	smnwiki = default,
	snwiki = default,
	sowiki = default,
	sqwiki = 'en albanais',
	srwiki = 'en serbe',
	suwiki = 'en soudanais',
	svwiki = 'en suédois',
	swwiki = 'en swahili',
	szlwiki = 'en silésien',
	tawiki = 'en tamoul',
	tewiki = 'en télougou',
	tgwiki = default,
	thwiki = 'en thaï',
	tkwiki = default,
	tlwiki = 'en tagalog',
	tnwiki = 'en tswana',
	trwiki = 'en turc',
	ttwiki = 'en tatar',
	tumwiki = default,
	udmwiki = default,
	ugwiki = default,
	ukwiki = 'en ukrainien',
	urwiki = 'en ourdou',
	uzwiki = 'en ouzbek',
	vecwiki = 'en vénitien',
	vepwiki = default,
	viwiki = 'en vietnamien',
	vlswiki = 'en flamand occidental',
	vowiki = 'en volapük',
	wawiki = 'en wallon',
	warwiki = 'en waray-waray',
	wuuwiki = default,
	xmfwiki = 'en mingrélien',
	yiwiki = 'en yiddish',
	yowiki = 'en yoruba',
	zeawiki = default,
	zhwiki = 'en chinois',
	zh_classicalwiki = 'en chinois classique',
	zh_min_nanwiki = 'en minnan',
	zh_yuewiki = 'en cantonais',
	zuwiki = default,
}

function p.badgesCategories( frame )
	local entityId = mw.wikibase.getEntityIdForCurrentPage()
	local wikitext = {}
	local categoryNs = mw.site.namespaces[14].name
	if not entityId then
		return ''
	end

	for siteId, suffix in pairs( linkCategorySuffix ) do
			local badges = mw.wikibase.getBadges( entityId, siteId )
			for i, badgeId in ipairs( badges ) do
				if badgesCategory[ badgeId ] then
					local main = badgesCategory[ badgeId ]
					local category = string.format('[[%s:%s]]', categoryNs, main .. ' ' .. suffix )
					table.insert( wikitext, category )
				end
			end
	end
	
	return table.concat( wikitext )
end

return p