<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://dansunegalaxie.ca/index.php?action=history&amp;feed=atom&amp;title=Module%3AImage</id>
	<title>Module:Image - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://dansunegalaxie.ca/index.php?action=history&amp;feed=atom&amp;title=Module%3AImage"/>
	<link rel="alternate" type="text/html" href="https://dansunegalaxie.ca/index.php?title=Module:Image&amp;action=history"/>
	<updated>2026-04-04T14:06:18Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://dansunegalaxie.ca/index.php?title=Module:Image&amp;diff=41&amp;oldid=prev</id>
		<title>Yuki : 1 version importée : Infobox</title>
		<link rel="alternate" type="text/html" href="https://dansunegalaxie.ca/index.php?title=Module:Image&amp;diff=41&amp;oldid=prev"/>
		<updated>2023-11-15T07:10:59Z</updated>

		<summary type="html">&lt;p&gt;1 version importée : Infobox&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 15 novembre 2023 à 03:10&lt;/td&gt;
				&lt;/tr&gt;
&lt;!-- diff cache key dugwiki:diff::1.12:old-40:rev-41 --&gt;
&lt;/table&gt;</summary>
		<author><name>Yuki</name></author>
	</entry>
	<entry>
		<id>https://dansunegalaxie.ca/index.php?title=Module:Image&amp;diff=40&amp;oldid=prev</id>
		<title>wikipedia&gt;Od1n : infobox v2&amp;nbsp;: format &quot;frameless&quot;, afin de ne pas upscaler les petites images car c&#039;est très moche (exemples avec les utilisations du fichier LogoNebulaAward.png)</title>
		<link rel="alternate" type="text/html" href="https://dansunegalaxie.ca/index.php?title=Module:Image&amp;diff=40&amp;oldid=prev"/>
		<updated>2023-06-22T10:00:52Z</updated>

		<summary type="html">&lt;p&gt;infobox v2 : format &amp;quot;frameless&amp;quot;, afin de ne pas upscaler les petites images car c&amp;#039;est très moche (exemples avec les &lt;a href=&quot;/index.php?title=Fichier:LogoNebulaAward.png&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Fichier:LogoNebulaAward.png (page inexistante)&quot;&gt;utilisations du fichier&lt;/a&gt; LogoNebulaAward.png)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- Ce module permet de générer une image, en nettoyant les paramètres pour éviter d&amp;#039;avoir des erreurs de Lint : [[Special:LintErrors/bogus-image-options]].&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local function trim( texte )&lt;br /&gt;
	if type( texte ) == &amp;#039;string&amp;#039; then&lt;br /&gt;
		texte = texte:gsub( &amp;#039;^%s*(%S?.-)%s*$&amp;#039;, &amp;#039;%1&amp;#039; )&lt;br /&gt;
		if texte ~= &amp;#039;&amp;#039; then&lt;br /&gt;
			return texte&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Retire toutes catégories, liens internes, externes et balises html pour ne garder que le texte brut.&lt;br /&gt;
local function nettoyageAlt( texte )&lt;br /&gt;
	if type( texte ) == &amp;#039;string&amp;#039; and texte:match( &amp;#039;[%[&amp;lt;\n]&amp;#039; )  then&lt;br /&gt;
			local function texteDuLien( l, t )&lt;br /&gt;
				return ( t ~= &amp;#039;&amp;#039; and t ) or l&lt;br /&gt;
			end&lt;br /&gt;
			texte = texte&lt;br /&gt;
			-- nettoyage des catégories&lt;br /&gt;
				:gsub( &amp;#039;%[%[[%s_]*[Cc]atégorie[%s_]*:.-%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
				:gsub( &amp;#039;%[%[[%s_]*[Cc]ategory[%s_]*:.-%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
			-- nettoyage des fichiers&lt;br /&gt;
				:gsub( &amp;#039;%[%[[Ff]ichier:[^%[%]]+%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
				:gsub( &amp;#039;%[%[[Ff]ile:[^%[%]]+%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
				:gsub( &amp;#039;%[%[[Ii]mage:[^%[%]]+%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
			-- nettoyage des liens internes&lt;br /&gt;
				:gsub( &amp;#039;%[%[([^%[%]|]*)|?([^%[%]]*)%]%]&amp;#039;, texteDuLien )&lt;br /&gt;
			-- nettoyage des liens externes&lt;br /&gt;
				:gsub( &amp;#039;%[https?://[^%[%] ]* *([^%]]+)%]&amp;#039;, &amp;#039;%1&amp;#039; )&lt;br /&gt;
				:gsub( &amp;#039;%[//[^%[%] ]* *([^%]]+)%]&amp;#039;, &amp;#039;%1&amp;#039; )&lt;br /&gt;
			-- nettoyage des listes&lt;br /&gt;
				:gsub( &amp;#039;\n[*#][^\n]+&amp;#039;, &amp;#039;&amp;#039;)&lt;br /&gt;
				:gsub( &amp;#039;&amp;lt;li.-&amp;lt;/li&amp;gt;&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
			-- nettoyage des balises html&lt;br /&gt;
				:gsub( &amp;#039;%b&amp;lt;&amp;gt;&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
			-- nettoyage des retour ligne&lt;br /&gt;
				:gsub( &amp;#039;\n&amp;#039;, &amp;#039; &amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	return trim( texte )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function valide( valeur, liste )&lt;br /&gt;
	for i, v in ipairs( liste ) do&lt;br /&gt;
		if valeur == v then&lt;br /&gt;
			return valeur&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return nil&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Génère l&amp;#039;appel au ficher image.&lt;br /&gt;
-- Si le paramètre image (nom du fichier) est vide, la fonction ne retourne rien&lt;br /&gt;
function p.image( rawArgs )&lt;br /&gt;
	local argsList = { &amp;#039;image&amp;#039;, &amp;#039;format&amp;#039;, &amp;#039;upright&amp;#039;, &amp;#039;taille&amp;#039;, &amp;#039;border&amp;#039;, &amp;#039;légende&amp;#039;, &amp;#039;alt&amp;#039;, &amp;#039;link&amp;#039;, &amp;#039;page&amp;#039;, &amp;#039;class&amp;#039;, &amp;#039;lang&amp;#039;, &amp;#039;align&amp;#039;, &amp;#039;valign&amp;#039; }&lt;br /&gt;
	local args = {}&lt;br /&gt;
	for _, v in ipairs( argsList ) do&lt;br /&gt;
		args[ v ] = trim( rawArgs[ v ] )&lt;br /&gt;
	end&lt;br /&gt;
	if not args.image then&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- analyse du nom de fichier&lt;br /&gt;
	local image = args.image&lt;br /&gt;
		:gsub( &amp;#039;%[%[[%s_]*[Cc]atégorie[%s_]*:.-%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
		:gsub( &amp;#039;%[%[[%s_]*[Cc]ategory[%s_]*:.-%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
		:gsub( &amp;#039;%[%[[Ff]ichier:([^|%[%]]+).+&amp;#039;, &amp;#039;%1&amp;#039; )&lt;br /&gt;
		:gsub( &amp;#039;%[%[[Ii]mage:([^|%[%]]+).+&amp;#039;, &amp;#039;%1&amp;#039; )&lt;br /&gt;
		:gsub( &amp;#039;%[%[[Ff]ile:([^|%[%]]+).+&amp;#039;, &amp;#039;%1&amp;#039; )&lt;br /&gt;
	&lt;br /&gt;
	-- analyse de la légende&lt;br /&gt;
	local legende = args[ &amp;#039;légende&amp;#039; ] and args[ &amp;#039;légende&amp;#039; ]&lt;br /&gt;
		:gsub( &amp;#039;%[%[[%s_]*[Cc]atégorie[%s_]*:.-%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
		:gsub( &amp;#039;%[%[[%s_]*[Cc]ategory[%s_]*:.-%]%]&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
	&lt;br /&gt;
	-- analyse de la taille&lt;br /&gt;
	local taille = args.taille and args.taille:gsub( &amp;#039;%s&amp;#039;, &amp;#039;&amp;#039; ):gsub( &amp;#039;(%d)$&amp;#039;, &amp;#039;%1px&amp;#039; )&lt;br /&gt;
	if taille and not ( taille:match &amp;#039;%d+x?%d*px&amp;#039; or taille:match &amp;#039;x%d+px&amp;#039; ) then&lt;br /&gt;
		taille = nil&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- analyse de l&amp;#039;alternative&lt;br /&gt;
	local alt = nettoyageAlt( args.alt )&lt;br /&gt;
	&lt;br /&gt;
	-- génération du lien&lt;br /&gt;
	local wiki = { image }&lt;br /&gt;
	table.insert( wiki, valide( args.format, { &amp;#039;thumb&amp;#039;, &amp;#039;frameless&amp;#039;, &amp;#039;frame&amp;#039;, &amp;#039;vignette&amp;#039;, &amp;#039;sanscadre&amp;#039;, &amp;#039;cadre&amp;#039;, &amp;#039;thumbnail&amp;#039;, } ) )&lt;br /&gt;
	table.insert( wiki, args.border and &amp;#039;border&amp;#039; )&lt;br /&gt;
	table.insert( wiki, taille )&lt;br /&gt;
	if tonumber( args.upright )&lt;br /&gt;
		and not taille&lt;br /&gt;
		and valide(args.format, { &amp;#039;thumb&amp;#039;, &amp;#039;vignette&amp;#039;, &amp;#039;thumbnail&amp;#039;, &amp;#039;frameless&amp;#039;, &amp;#039;sanscadre&amp;#039;, } )&lt;br /&gt;
	then&lt;br /&gt;
		table.insert( wiki, &amp;#039;upright=&amp;#039; .. args.upright )&lt;br /&gt;
	end&lt;br /&gt;
	table.insert( wiki, valide( args.align, { &amp;#039;left&amp;#039;, &amp;#039;right&amp;#039;, &amp;#039;center&amp;#039;, &amp;#039;none&amp;#039;, &amp;#039;gauche&amp;#039;, &amp;#039;droite&amp;#039;, &amp;#039;centre&amp;#039;, &amp;#039;centré&amp;#039; } ) )&lt;br /&gt;
	table.insert( wiki, valide( args.valign, { &amp;#039;top&amp;#039;, &amp;#039;text-top&amp;#039;, &amp;#039;super&amp;#039;, &amp;#039;baseline&amp;#039;, &amp;#039;sub&amp;#039;, &amp;#039;middle&amp;#039;, &amp;#039;text-bottom&amp;#039;, &amp;#039;bottom&amp;#039;, &amp;#039;haut&amp;#039;, &amp;#039;haut-texte&amp;#039;, &amp;#039;sup&amp;#039;, &amp;#039;base&amp;#039;, &amp;#039;milieu&amp;#039;, &amp;#039;bas-texte&amp;#039;, &amp;#039;bas&amp;#039;, } ) )&lt;br /&gt;
	table.insert( wiki, alt and &amp;#039;alt=&amp;#039; .. alt )&lt;br /&gt;
	table.insert( wiki, args.link and &amp;#039;link=&amp;#039; .. args.link )&lt;br /&gt;
	table.insert( wiki, args.page and &amp;#039;page=&amp;#039; .. args.page )&lt;br /&gt;
	table.insert( wiki, args.class and &amp;#039;class=&amp;#039; .. args.class )&lt;br /&gt;
	if args.lang and image:sub( -4 ):lower() == &amp;#039;.svg&amp;#039; then&lt;br /&gt;
		table.insert( wiki, &amp;#039;lang=&amp;#039; .. args.lang )&lt;br /&gt;
	end&lt;br /&gt;
	table.insert( wiki, legende )&lt;br /&gt;
	&lt;br /&gt;
	return &amp;#039;[[Fichier:&amp;#039; .. table.concat( wiki, &amp;#039;|&amp;#039; ) .. &amp;#039;]]&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function p.infoboxV2( frame )&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	&lt;br /&gt;
	if args.alt == &amp;#039;&amp;#039; then&lt;br /&gt;
		args.alt = &amp;#039;Image illustrative de l’article &amp;#039; .. mw.title.getCurrentTitle().text &lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local taille = args.taille:gsub( &amp;#039;%D&amp;#039;, &amp;#039;&amp;#039; )&lt;br /&gt;
	taille = tonumber( taille ) or 280&lt;br /&gt;
	if taille &amp;gt; 280 then&lt;br /&gt;
		taille = 280&lt;br /&gt;
	end&lt;br /&gt;
	args.taille = taille .. &amp;#039;px&amp;#039;&lt;br /&gt;
	&lt;br /&gt;
	-- pareil que le format par défaut, parce qu&amp;#039;une taille en px est spécifiée,&lt;br /&gt;
	-- mais n&amp;#039;agrandit pas l&amp;#039;image si elle est plus petite que cette taille&lt;br /&gt;
	args.format = &amp;#039;frameless&amp;#039;&lt;br /&gt;
	&lt;br /&gt;
	return p.image( args )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>wikipedia&gt;Od1n</name></author>
	</entry>
</feed>