Aller au contenu

Module:Bac à sable

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 9 octobre 2024 à 13:51 et modifiée en dernier par Ménestor (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

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


Utilisation

Cette page est destinée à vous aider à vous familiariser avec le système de création et modification de modules de Wikipédia.

Il est possible de tester le résultat de votre module dans la page Modèle:Bac à sable (placez-y le code {{#invoke:Bac à sable|nom_fonction|arg1|arg2|…}}).

Vous pouvez consulter le Manuel de référence complet en français sur www.mediawiki.org, Projet:Scribunto/Guide, aide:module, ou discuter avec les autres membres du projet Scribunto.

local p = {}

local function obtenirCouleur(code)
		local data = mw.loadData('Module:Infobox Parti politique japonais/couleurs/data')
		local couleur = data.principal[code]
		if not couleur then
			local alias = data.alter[code]
			couleur = data.principal[alias]
		end
		return couleur
end

local function couleurSeule(code)
	local couleur = obtenirCouleur(code)
	if type(couleur) == 'string' then
		return mw.text.nowiki(couleur)
	else
		return nil
	end
end

local function couleurTableau(code)
	local couleur = obtenirCouleur(code)
	if type(couleur) == 'string' then
		local initiale = 'style="background-color: ' .. couleur .. ';'
		if type(largeur) == 'string' and largeur ~= '' then
			return initiale .. ' width: ' .. largeur .. ';"'
		else
			return initiale .. '"'
		end
	else
		return nil
	end
end

function p.couleurParti(frame)
	-- Récupération des paramètres
	local pframe = frame:getParent()
	local args = pframe.args
	local parametre1 = args[1]
	
	if type(parametre1) == 'string' then
		if mw.ustring.sub(parametre1, 1, 1) == '-' then
			parametre1 = mw.ustring.sub(parametre1, 2)
			return couleurSeule(parametre1)
		else
			local largeur = args.largeur
			return couleurTableau(parametre1)
		end
	else
		return nil	
	end
end

return p