<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://baripedia.org/index.php?action=history&amp;feed=atom&amp;title=Module%3AConversion</id>
	<title>Module:Conversion - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://baripedia.org/index.php?action=history&amp;feed=atom&amp;title=Module%3AConversion"/>
	<link rel="alternate" type="text/html" href="https://baripedia.org/index.php?title=Module:Conversion&amp;action=history"/>
	<updated>2026-05-09T09:28:22Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.38.6</generator>
	<entry>
		<id>https://baripedia.org/index.php?title=Module:Conversion&amp;diff=30846&amp;oldid=prev</id>
		<title>Arthur : 1 révision importée</title>
		<link rel="alternate" type="text/html" href="https://baripedia.org/index.php?title=Module:Conversion&amp;diff=30846&amp;oldid=prev"/>
		<updated>2016-01-27T20:13:58Z</updated>

		<summary type="html">&lt;p&gt;1 révision importée&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local math_mod = require &amp;quot;Module:Math&amp;quot;&lt;br /&gt;
local formatnum = require &amp;quot;Module:Format&amp;quot;.do_formatnum&lt;br /&gt;
local params = require &amp;quot;Module:Conversion/Données&amp;quot;&lt;br /&gt;
local defaultlang = 'fr'&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local i18n = {&lt;br /&gt;
	invalidunit = 'Page avec une unité de mesure non supportée'&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function numString(val, rounding, displayformat) -- transforme un nombre en chaîne&lt;br /&gt;
	if rounding then&lt;br /&gt;
		val = math_mod._round( val, rounding )&lt;br /&gt;
	end&lt;br /&gt;
	val = formatnum({tostring(val)})&lt;br /&gt;
	if displayformat and displayformat.suffix then&lt;br /&gt;
		val = val .. suffix&lt;br /&gt;
	end&lt;br /&gt;
	return val&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function convert(value, sourceunitdata, targetunitdata) -- convertir une valeur numérique en son équivalent dans une autre unité de mesure&lt;br /&gt;
	if not value then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	if type(value) ~= 'number' then&lt;br /&gt;
		return error(&amp;quot;bad datatype: &amp;quot; .. type(value))&lt;br /&gt;
	end&lt;br /&gt;
	if (not sourceunitdata) or (not targetunitdata) then&lt;br /&gt;
		return value&lt;br /&gt;
	end&lt;br /&gt;
	return value * sourceunitdata[2] / targetunitdata[2]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.displayvalue(val, sourceunit, displayformat, errhandling) -- affiche une valeur formatée)&lt;br /&gt;
	&lt;br /&gt;
	-- préparation des paramètres&lt;br /&gt;
	local numval = tonumber(val)&lt;br /&gt;
	if not numval then -- si les données sont inhabituelles, on laisse la fonction appelante se débrouiller&lt;br /&gt;
		return val&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if not displayformat or type(displayformat) ~= 'table' then&lt;br /&gt;
		displayformat = {}&lt;br /&gt;
	end&lt;br /&gt;
	local showunit, showlink, rounding, targetunit = displayformat.showunit, displayformat.showlink, displayformat.rounding, displayformat.targetunit&lt;br /&gt;
	&lt;br /&gt;
	-- récupération des donnnées concernant les unités&lt;br /&gt;
	if sourceunit and not targetunit then&lt;br /&gt;
		targetunit = sourceunit&lt;br /&gt;
	end&lt;br /&gt;
	local sourceunitdata, targetunitdata = sourceunit, targetunit&lt;br /&gt;
	if type(sourceunitdata) ~= 'table' then&lt;br /&gt;
		sourceunitdata = params.units[sourceunit] or params.units[params.redirects[sourceunit]]&lt;br /&gt;
	end&lt;br /&gt;
	if type(targetunitdata) ~= 'table' then	&lt;br /&gt;
		targetunitdata = params.units[targetunit] or params.units[params.redirects[targetunit]]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if sourceunitdata and targetunitdata and (targetunitdata[1] ~= sourceunitdata[1]) then&lt;br /&gt;
		return error(&amp;quot;measurement unit mismatch: &amp;quot; .. l[1] .. ' and ' .. targetunitdata[1] )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- partie numérique&lt;br /&gt;
	if (sourceunit and targetunit) and (sourceunit ~= targetunit) then&lt;br /&gt;
		numval = convert(numval, sourceunitdata, targetunitdata)&lt;br /&gt;
	end&lt;br /&gt;
	local numstr = numString(numval, rounding)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	-- affichage de l'unité&lt;br /&gt;
	local unitstr, link&lt;br /&gt;
	if not targetunitdata then -- pour éviter les bugs&lt;br /&gt;
		targetunitdata = {}&lt;br /&gt;
	end&lt;br /&gt;
	if showunit == 'long' then -- format long = montrer l'unité en entier&lt;br /&gt;
		if (numval or 0) &amp;gt; 1 then&lt;br /&gt;
			unitstr = targetunitdata[7]&lt;br /&gt;
		else&lt;br /&gt;
			unitstr = targetunitdata[6]&lt;br /&gt;
		end&lt;br /&gt;
	elseif showunit then&lt;br /&gt;
		unitstr = targetunitdata[3]&lt;br /&gt;
	end&lt;br /&gt;
	if sourceunit and showunit and (not unitstr) then&lt;br /&gt;
		numstr = numstr .. '[[Category:' .. i18n.invalidunit .. ']]'&lt;br /&gt;
	end&lt;br /&gt;
	-- showlink&lt;br /&gt;
	if type( displayformat.showlink == 'string') then --liens personnalisés&lt;br /&gt;
		link = displayformat.showlink&lt;br /&gt;
	elseif displayformat.showlink == true then -- liens vers l'article dédié&lt;br /&gt;
		link =  targetunitdata[5]&lt;br /&gt;
	end&lt;br /&gt;
	if unitstr and link then&lt;br /&gt;
		unitstr = '[[' .. link .. '|' .. unitstr .. ']]'&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return numstr .. ' ' .. (unitstr or '')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.display(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local value, origunit, targetunit = args[1], args[2], args[3]&lt;br /&gt;
	local rounding = args.rounding&lt;br /&gt;
	local showlink, showunit = 	args.showlink, args.showunit&lt;br /&gt;
	if showunit == 'true' then&lt;br /&gt;
		showunit = true&lt;br /&gt;
	end&lt;br /&gt;
	if showlink == 'true' then&lt;br /&gt;
		showlink = true&lt;br /&gt;
	end&lt;br /&gt;
	displayformat = {showunit = showunit, showlink = showlink, rounding = rounding, targetunit = targetunit}&lt;br /&gt;
	return p.displayvalue(value, origunit, displayformat)&lt;br /&gt;
end&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Arthur</name></author>
	</entry>
	<entry>
		<id>https://baripedia.org/index.php?title=Module:Conversion&amp;diff=28271&amp;oldid=prev</id>
		<title>Arthur : 1 révision importée</title>
		<link rel="alternate" type="text/html" href="https://baripedia.org/index.php?title=Module:Conversion&amp;diff=28271&amp;oldid=prev"/>
		<updated>2015-11-09T20:49:13Z</updated>

		<summary type="html">&lt;p&gt;1 révision importée&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local math_mod = require &amp;quot;Module:Math&amp;quot;&lt;br /&gt;
local formatnum = require &amp;quot;Module:Format&amp;quot;.do_formatnum&lt;br /&gt;
local params = require &amp;quot;Module:Conversion/Données&amp;quot;&lt;br /&gt;
local defaultlang = 'fr'&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local i18n = {&lt;br /&gt;
	invalidunit = 'Page avec une unité de mesure non supportée'&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function numString(val, rounding, displayformat) -- transforme un nombre en chaîne&lt;br /&gt;
	if rounding then&lt;br /&gt;
		val = math_mod._round( val, rounding )&lt;br /&gt;
	end&lt;br /&gt;
	val = formatnum({tostring(val)})&lt;br /&gt;
	if displayformat and displayformat.suffix then&lt;br /&gt;
		val = val .. suffix&lt;br /&gt;
	end&lt;br /&gt;
	return val&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function convert(value, sourceunitdata, targetunitdata) -- convertir une valeur numérique en son équivalent dans une autre unité de mesure&lt;br /&gt;
	if not value then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	if type(value) ~= 'number' then&lt;br /&gt;
		return error(&amp;quot;bad datatype: &amp;quot; .. type(value))&lt;br /&gt;
	end&lt;br /&gt;
	if (not sourceunitdata) or (not targetunitdata) then&lt;br /&gt;
		return value&lt;br /&gt;
	end&lt;br /&gt;
	return value * sourceunitdata[2] / targetunitdata[2]&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.displayvalue(val, sourceunit, displayformat, errhandling) -- affiche une valeur formatée)&lt;br /&gt;
	&lt;br /&gt;
	-- préparation des paramètres&lt;br /&gt;
	local numval = tonumber(val)&lt;br /&gt;
	if not numval then -- si les données sont inhabituelles, on laisse la fonction appelante se débrouiller&lt;br /&gt;
		return val&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if not displayformat or type(displayformat) ~= 'table' then&lt;br /&gt;
		displayformat = {}&lt;br /&gt;
	end&lt;br /&gt;
	local showunit, showlink, rounding, targetunit = displayformat.showunit, displayformat.showlink, displayformat.rounding, displayformat.targetunit&lt;br /&gt;
	&lt;br /&gt;
	-- récupération des donnnées concernant les unités&lt;br /&gt;
	if sourceunit and not targetunit then&lt;br /&gt;
		targetunit = sourceunit&lt;br /&gt;
	end&lt;br /&gt;
	local sourceunitdata, targetunitdata = sourceunit, targetunit&lt;br /&gt;
	if type(sourceunitdata) ~= 'table' then&lt;br /&gt;
		sourceunitdata = params.units[sourceunit] or params.units[params.redirects[sourceunit]]&lt;br /&gt;
	end&lt;br /&gt;
	if type(targetunitdata) ~= 'table' then	&lt;br /&gt;
		targetunitdata = params.units[targetunit] or params.units[params.redirects[targetunit]]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if sourceunitdata and targetunitdata and (targetunitdata[1] ~= sourceunitdata[1]) then&lt;br /&gt;
		return error(&amp;quot;measurement unit mismatch: &amp;quot; .. l[1] .. ' and ' .. targetunitdata[1] )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- partie numérique&lt;br /&gt;
	if (sourceunit and targetunit) and (sourceunit ~= targetunit) then&lt;br /&gt;
		numval = convert(numval, sourceunitdata, targetunitdata)&lt;br /&gt;
	end&lt;br /&gt;
	local numstr = numString(numval, rounding)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	-- affichage de l'unité&lt;br /&gt;
	local unitstr, link&lt;br /&gt;
	if not targetunitdata then -- pour éviter les bugs&lt;br /&gt;
		targetunitdata = {}&lt;br /&gt;
	end&lt;br /&gt;
	if showunit == 'long' then -- format long = montrer l'unité en entier&lt;br /&gt;
		if (numval or 0) &amp;gt; 1 then&lt;br /&gt;
			unitstr = targetunitdata[7]&lt;br /&gt;
		else&lt;br /&gt;
			unitstr = targetunitdata[6]&lt;br /&gt;
		end&lt;br /&gt;
	elseif showunit then&lt;br /&gt;
		unitstr = targetunitdata[3]&lt;br /&gt;
	end&lt;br /&gt;
	if sourceunit and showunit and (not unitstr) then&lt;br /&gt;
		numstr = numstr .. '[[Category:' .. i18n.invalidunit .. ']]'&lt;br /&gt;
	end&lt;br /&gt;
	-- showlink&lt;br /&gt;
	if type( displayformat.showlink == 'string') then --liens personnalisés&lt;br /&gt;
		link = displayformat.showlink&lt;br /&gt;
	elseif displayformat.showlink == true then -- liens vers l'article dédié&lt;br /&gt;
		link =  targetunitdata[5]&lt;br /&gt;
	end&lt;br /&gt;
	if unitstr and link then&lt;br /&gt;
		unitstr = '[[' .. link .. '|' .. unitstr .. ']]'&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return numstr .. ' ' .. (unitstr or '')&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.display(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local value, origunit, targetunit = args[1], args[2], args[3]&lt;br /&gt;
	local rounding = args.rounding&lt;br /&gt;
	local showlink, showunit = 	args.showlink, args.showunit&lt;br /&gt;
	if showunit == 'true' then&lt;br /&gt;
		showunit = true&lt;br /&gt;
	end&lt;br /&gt;
	if showlink == 'true' then&lt;br /&gt;
		showlink = true&lt;br /&gt;
	end&lt;br /&gt;
	displayformat = {showunit = showunit, showlink = showlink, rounding = rounding, targetunit = targetunit}&lt;br /&gt;
	return p.displayvalue(value, origunit, displayformat)&lt;br /&gt;
end&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Arthur</name></author>
	</entry>
</feed>