Bienvenue sur le wiki de Nuit debout, nous sommes le 2973 mars.
Module:Mention
De NuitDebout
La documentation pour ce module peut être créée à Module:Mention/doc
local p = {} function p.mention(frame) -- Nombre maximum de notifs autorisées par appel local NB_MAX_MENTION = 10 local result = "" -- Récupération des paramètres passés au modèle invoquant ce module local args = frame:getParent().args -- S'il y a des paramètres non nommés (usage standard) if args[1] then -- On écrit déjà le premier utilisateur result = '[[User:' .. args[1] .. '|' .. args[1] .. ']]' local i = 2 -- S'il y a d'autres paramètres if args[2] then -- Tant qu'on est pas arrivés au dernier paramètre, ou à la limite fixée par NB_MAX_MENTION, on inscrit tous les noms while args[i+1] and i < NB_MAX_MENTION do result = result .. ', [[User:' .. args[i] .. '|' .. args[i] .. ']]' i = i+1 end -- Et on s'occupe du dernier utilisateur à part (on utilise "et" au lieu d'une virgule) result = result .. ' et [[User:' .. args[i] .. '|' .. args[i] .. ']]' end -- Le modèle Mention fut utilisé à un moment en utilisant des paramètres nommés, le bloc suivant fait la même chose que ce qui précède dans le cas de paramètres nommés elseif args['texte1'] then result = '[[User:' .. args['texte1'] .. '|' .. args['texte1'] .. ']]' local i = 2 if args['texte2'] then while args['texte' .. tonumber(i+1)] and i < NB_MAX_MENTION do result = result .. ', [[User:' .. args['texte' .. tonumber(i)] .. '|' .. args['texte' .. tonumber(i)] .. ']]' i = i+1 end result = result .. ' et [[User:' .. args['texte' .. tonumber(i)] .. '|' .. args['texte' .. tonumber(i)] .. ']]' end end -- Et finalement on retourne la chaîne de caractères qu'on vient de construire return result end return p