<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://wicri-demo.istex.fr/Wicri/Francophonie/fr/index.php?action=history&amp;feed=atom&amp;title=Module%3ADocumentation</id>
	<title>Module:Documentation - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://wicri-demo.istex.fr/Wicri/Francophonie/fr/index.php?action=history&amp;feed=atom&amp;title=Module%3ADocumentation"/>
	<link rel="alternate" type="text/html" href="https://wicri-demo.istex.fr/Wicri/Francophonie/fr/index.php?title=Module:Documentation&amp;action=history"/>
	<updated>2026-04-19T01:01:45Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.31.10</generator>
	<entry>
		<id>https://wicri-demo.istex.fr/Wicri/Francophonie/fr/index.php?title=Module:Documentation&amp;diff=89&amp;oldid=prev</id>
		<title>imported&gt;Jacques Ducloy : 1 révision importée</title>
		<link rel="alternate" type="text/html" href="https://wicri-demo.istex.fr/Wicri/Francophonie/fr/index.php?title=Module:Documentation&amp;diff=89&amp;oldid=prev"/>
		<updated>2020-12-07T15:43:20Z</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;--Ce module implémente le modèle {{Documentation}}.&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local function existePage(page)&lt;br /&gt;
	return page and page.exists&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function nomDocumentation(page)&lt;br /&gt;
	--On n'est pas dans une sous-page&lt;br /&gt;
	if not page.isSubpage then&lt;br /&gt;
		return page.subjectNsText .. ':' .. page.text .. '/Documentation'&lt;br /&gt;
	end&lt;br /&gt;
 &lt;br /&gt;
	--On est dans une sous-page&lt;br /&gt;
	local sousPage = page.subpageText&lt;br /&gt;
	if sousPage == 'Documentation'&lt;br /&gt;
	or sousPage == 'Bac à sable'&lt;br /&gt;
	or sousPage == 'Test' then&lt;br /&gt;
		return page.subjectNsText .. ':' .. page.baseText .. '/Documentation'&lt;br /&gt;
	else&lt;br /&gt;
		return page.subjectNsText .. ':' .. page.text .. '/Documentation'&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function lienUrl(nomPage, titrePage, action, pagePreload)&lt;br /&gt;
	local argument = {['action'] = action or 'edit'}&lt;br /&gt;
 &lt;br /&gt;
	if pagePreload then&lt;br /&gt;
		argument['preload'] = 'Modèle:Documentation/Preload' .. pagePreload&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return mw.ustring.format('[%s %s]', nomPage:fullUrl(argument), titrePage)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function entete(args, page, doc, existeDoc)&lt;br /&gt;
	local res = mw.html.create('div')&lt;br /&gt;
&lt;br /&gt;
	res&lt;br /&gt;
		:css('margin-bottom', '1ex')&lt;br /&gt;
		:css('border-bottom', '1px solid #aaa')&lt;br /&gt;
		:css('padding-bottom', '3px')&lt;br /&gt;
 		:wikitext('[[Fichier:Template-info.png|50px|alt=|link=]]')&lt;br /&gt;
	 	:tag('span')&lt;br /&gt;
	 		:css('font-weight', 'bold')&lt;br /&gt;
	 		:css('font-size', '125%')&lt;br /&gt;
	 		:css('vertical-align', 'middle')&lt;br /&gt;
	 		:wikitext('&amp;amp;nbsp;')&lt;br /&gt;
	 		:wikitext(args.titre or 'Documentation')&lt;br /&gt;
	 		:done()&lt;br /&gt;
&lt;br /&gt;
	if not args.contenu then&lt;br /&gt;
		local editionLien = res:tag('span')&lt;br /&gt;
			:addClass('mw-editsection plainlinks')&lt;br /&gt;
			:css('vertical-align', 'middle')&lt;br /&gt;
			:wikitext('&amp;amp;#91;')&lt;br /&gt;
&lt;br /&gt;
		if existeDoc then&lt;br /&gt;
			editionLien:wikitext(lienUrl(doc, 'modifier'))&lt;br /&gt;
		else&lt;br /&gt;
			if args.module then&lt;br /&gt;
				editionLien:wikitext(lienUrl(doc, 'créer', 'edit', 'Module'))&lt;br /&gt;
			else&lt;br /&gt;
				editionLien:wikitext(lienUrl(doc, 'créer', 'edit', ''))&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		editionLien&lt;br /&gt;
			:wikitext('&amp;amp;#93;&amp;amp;#32;&amp;amp;#91;')&lt;br /&gt;
			:wikitext(lienUrl(page, 'purger', 'purge'))&lt;br /&gt;
			:wikitext('&amp;amp;#93;')&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return res&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function protection(page, doc, existeDoc)&lt;br /&gt;
	-- Insertion automatique du modèle de protection.&lt;br /&gt;
	local niveauProtection = page.protectionLevels.edit&lt;br /&gt;
&lt;br /&gt;
	if niveauProtection and niveauProtection[1] then&lt;br /&gt;
		local tableProtection = {&lt;br /&gt;
			autoconfirmed = {'semiProtection', '{{%s*[Ss]emi%-protection%s*l?o?n?g?u?e?[|}]'},&lt;br /&gt;
			editextendedsemiprotected = {'semiProtectionEtendue', '{{%s*[Ss]emi%-protection étendue%s*[|}]'},&lt;br /&gt;
			sysop = {'protection', '{{%s*[Pp]rotection%s*[|}]'},&lt;br /&gt;
		}&lt;br /&gt;
		local protection = tableProtection[niveauProtection[1]]&lt;br /&gt;
		if existeDoc then&lt;br /&gt;
			-- Vérification qu'il n'y a pas déjà un modèle de&lt;br /&gt;
			-- protection dans la documentation du modèle.&lt;br /&gt;
			local contenuDoc = doc:getContent()&lt;br /&gt;
			if contenuDoc:match(protection[2]) then&lt;br /&gt;
				protection = false&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if protection then&lt;br /&gt;
			return require('Module:Protection').main({}, protection[1], page)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function contenu(args, doc, existeDoc)&lt;br /&gt;
	local page = mw.title.getCurrentTitle()&lt;br /&gt;
	local res = mw.html.create():newline()&lt;br /&gt;
&lt;br /&gt;
	if args.contenu then&lt;br /&gt;
		res:wikitext(args.contenu)&lt;br /&gt;
	elseif existeDoc then&lt;br /&gt;
		local frame = mw.getCurrentFrame()&lt;br /&gt;
		if frame.args and frame.args['contenu sous-page'] then&lt;br /&gt;
			res:wikitext(frame.args['contenu sous-page'])&lt;br /&gt;
		else&lt;br /&gt;
			res:wikitext(frame:expandTemplate{title = doc.prefixedText})&lt;br /&gt;
		end&lt;br /&gt;
	elseif page.subpageText ~= 'Bac à sable' and page.subpageText ~= 'Test' then&lt;br /&gt;
		local texteBandeau = '&amp;lt;b&amp;gt;Ce %s ne possède aucune [[Aide:Documentation de modèle|documentation]] '&lt;br /&gt;
			..'explicative en sous-page&amp;lt;/b&amp;gt;, pas même une description succincte.&amp;lt;br&amp;gt; '&lt;br /&gt;
			..'Vous pouvez %s afin de documenter ce %s adéquatement.'&lt;br /&gt;
		if args.module then&lt;br /&gt;
			texteBandeau = texteBandeau:format(&lt;br /&gt;
				'module',&lt;br /&gt;
				lienUrl(doc, 'créer cette sous-page', 'edit', 'Module'),&lt;br /&gt;
				'module'&lt;br /&gt;
			)&lt;br /&gt;
		else&lt;br /&gt;
			texteBandeau = texteBandeau:format(&lt;br /&gt;
				'modèle',&lt;br /&gt;
				lienUrl(doc, 'créer cette sous-page', 'edit', ''),&lt;br /&gt;
				'modèle'&lt;br /&gt;
			)&lt;br /&gt;
		end&lt;br /&gt;
		if page.namespace == 10 then&lt;br /&gt;
			texteBandeau = texteBandeau .. '[[Catégorie:Modèle sans documentation]]'&lt;br /&gt;
		elseif page.namespace == 828 then&lt;br /&gt;
			if page.baseText == 'Carte/données' or page.baseText == 'Country data' or page.text:sub(1, 12) == 'Utilisateur:' then&lt;br /&gt;
				-- pas de catégorisation pour : modèles de données, pseudo-namespace &amp;quot;Module:Utilisateur:Toto/Nom du module&amp;quot;&lt;br /&gt;
			else&lt;br /&gt;
				texteBandeau = texteBandeau .. '[[Catégorie:Module sans documentation]]'&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		local param = {&lt;br /&gt;
			['icône'] = 'Book-cover-A-Z.svg',&lt;br /&gt;
			alt = 'domaine public',&lt;br /&gt;
			style = 'width:80%;',&lt;br /&gt;
			texte = texteBandeau,&lt;br /&gt;
		}&lt;br /&gt;
		res:wikitext(require('Module:Bandeau')._bandeau(param))&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	res&lt;br /&gt;
		:newline()&lt;br /&gt;
		:tag('div')&lt;br /&gt;
			:css('clear', 'both')&lt;br /&gt;
 &lt;br /&gt;
	return res&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function notice(args, page, doc, existeDoc)&lt;br /&gt;
	local res = mw.html.create('div')&lt;br /&gt;
		:css('border-top', '1px solid #aaa')&lt;br /&gt;
		:css('margin', '1.5em 0 0')&lt;br /&gt;
&lt;br /&gt;
	local contenuParagraphe = res&lt;br /&gt;
		:tag('p')&lt;br /&gt;
			:addClass('plainlinks')&lt;br /&gt;
			:css('margin-bottom', '0')&lt;br /&gt;
			:css('padding-left', '1em')&lt;br /&gt;
			:css('font-style', 'italic')&lt;br /&gt;
&lt;br /&gt;
	if args.contenu then&lt;br /&gt;
		if args.notice then&lt;br /&gt;
			contenuParagraphe:wikitext(args.notice .. '&amp;lt;br /&amp;gt;')&lt;br /&gt;
		else&lt;br /&gt;
			contenuParagraphe&lt;br /&gt;
				:wikitext('La [[Aide:Documentation de modèle|documentation]] ')&lt;br /&gt;
				:wikitext('de ce [[Aide:Modèle|modèle]] est directement ')&lt;br /&gt;
				:wikitext('[[Aide:Inclusion|incluse]] dans le corps de ce dernier. ')&lt;br /&gt;
				:wikitext(lienUrl(page, 'Cliquez ici pour purger le cache', 'purge'))&lt;br /&gt;
				:wikitext('.&amp;lt;br /&amp;gt; Si cette page est protégée, veuillez ')&lt;br /&gt;
				:wikitext('transférer le contenu de la documentation vers sa ')&lt;br /&gt;
				:wikitext(lienUrl(doc, 'sous-page dédiée', 'edit', ''))&lt;br /&gt;
				:wikitext('.&amp;lt;br /&amp;gt; ')&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		if existeDoc then&lt;br /&gt;
			local lienAide = '[[Aide:Modèle|modèle]]'&lt;br /&gt;
			if args.module then&lt;br /&gt;
				lienAide = '[[Aide:Module|module]]'&lt;br /&gt;
			end&lt;br /&gt;
			contenuParagraphe&lt;br /&gt;
				:wikitext('La [[Aide:Documentation de modèle|documentation]] de ce ')&lt;br /&gt;
				:wikitext(lienAide)&lt;br /&gt;
				:wikitext(' est [[Aide:Inclusion|incluse]] depuis sa [[')&lt;br /&gt;
				:wikitext(tostring(doc))&lt;br /&gt;
				:wikitext('|sous-page de documentation]]&amp;amp;nbsp;')&lt;br /&gt;
				:tag('span')&lt;br /&gt;
					:css('font-size', '89%')&lt;br /&gt;
					:css('font-style', 'normal')&lt;br /&gt;
					:wikitext('(')&lt;br /&gt;
					:wikitext(lienUrl(doc, 'modifier'))&lt;br /&gt;
					:wikitext('&amp;amp;nbsp;|&amp;amp;nbsp;')&lt;br /&gt;
					:wikitext(lienUrl(doc, 'historique', 'history'))&lt;br /&gt;
					:wikitext(').&amp;lt;br /&amp;gt; ')&lt;br /&gt;
					:done()&lt;br /&gt;
				:wikitext('Veuillez placer les catégories dans la sous-page ')&lt;br /&gt;
				:wikitext(lienUrl(doc, '/Documentation'))&lt;br /&gt;
				:wikitext('.&amp;lt;br /&amp;gt; ')&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	contenuParagraphe:wikitext('Les éditeurs peuvent travailler dans le ')&lt;br /&gt;
	&lt;br /&gt;
	local titrePageBacasable = nomDocumentation(page):gsub('/Documentation', '/Bac à sable')&lt;br /&gt;
	local pageBacasable = mw.title.new(titrePageBacasable)&lt;br /&gt;
&lt;br /&gt;
	if existePage(pageBacasable) then&lt;br /&gt;
		contenuParagraphe&lt;br /&gt;
			:wikitext('[[' .. titrePageBacasable .. '|bac à sable]]&amp;amp;nbsp;')&lt;br /&gt;
			:tag('span')&lt;br /&gt;
				:css('font-size', '89%')&lt;br /&gt;
				:css('font-style', 'normal')&lt;br /&gt;
				:wikitext('(')&lt;br /&gt;
				:wikitext(lienUrl(pageBacasable, 'modifier'))&lt;br /&gt;
				:wikitext(')')&lt;br /&gt;
	else&lt;br /&gt;
		local preLoad = '2'&lt;br /&gt;
		if args.module then&lt;br /&gt;
			preLoad = nil&lt;br /&gt;
		end&lt;br /&gt;
		contenuParagraphe&lt;br /&gt;
			:wikitext('bac à sable&amp;amp;nbsp;')&lt;br /&gt;
			:tag('span')&lt;br /&gt;
				:css('font-size', '89%')&lt;br /&gt;
				:css('font-style', 'normal')&lt;br /&gt;
				:wikitext('(')&lt;br /&gt;
				:wikitext(lienUrl(pageBacasable, 'créer', 'edit', preLoad))&lt;br /&gt;
				:wikitext(')')&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if not args.module then&lt;br /&gt;
		contenuParagraphe:wikitext(' et la page de ')&lt;br /&gt;
&lt;br /&gt;
		local titrePageTest = nomDocumentation(page):gsub('/Documentation', '/Test')&lt;br /&gt;
		local pageTest = mw.title.new(titrePageTest)&lt;br /&gt;
 &lt;br /&gt;
		if existePage(pageTest) then&lt;br /&gt;
			contenuParagraphe&lt;br /&gt;
				:wikitext('[[' .. titrePageTest .. '|test]]&amp;amp;nbsp;')&lt;br /&gt;
				:tag('span')&lt;br /&gt;
					:css('font-size', '89%')&lt;br /&gt;
					:css('font-style', 'normal')&lt;br /&gt;
					:wikitext('(')&lt;br /&gt;
					:wikitext(lienUrl(pageTest, 'modifier'))&lt;br /&gt;
					:wikitext(')')&lt;br /&gt;
		else&lt;br /&gt;
			contenuParagraphe&lt;br /&gt;
				:wikitext('test&amp;amp;nbsp;')&lt;br /&gt;
				:tag('span')&lt;br /&gt;
					:css('font-size', '89%')&lt;br /&gt;
					:css('font-style', 'normal')&lt;br /&gt;
					:wikitext('(')&lt;br /&gt;
					:wikitext(lienUrl(pageTest, 'créer', 'edit', '3'))&lt;br /&gt;
					:wikitext(')')&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	contenuParagraphe:wikitext('.')&lt;br /&gt;
&lt;br /&gt;
	return res&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._documentation(args)&lt;br /&gt;
	local page = mw.title.getCurrentTitle()&lt;br /&gt;
	local titreDoc = nomDocumentation(page)&lt;br /&gt;
	local doc = mw.title.new(args[1] or titreDoc)&lt;br /&gt;
	local existeDoc = existePage(doc)&lt;br /&gt;
	local res = mw.html.create()&lt;br /&gt;
	&lt;br /&gt;
	--Bandeau pour les sous-pages /Bac à sable&lt;br /&gt;
	if page.subpageText == 'Bac à sable' then&lt;br /&gt;
		res&lt;br /&gt;
			:tag('div')&lt;br /&gt;
				:css('clear', 'both')&lt;br /&gt;
				:done()&lt;br /&gt;
			:wikitext(mw.getCurrentFrame():expandTemplate{title = 'Sous-page de bac à sable'})&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	--Génération de la documentation&lt;br /&gt;
	res&lt;br /&gt;
		:tag('div')&lt;br /&gt;
			:css('clear', 'both')&lt;br /&gt;
			:css('margin', '1em 0 0 0')&lt;br /&gt;
			:css('border', '1px solid #aaa')&lt;br /&gt;
			:css('background', args.couleur or '#ecfcf4')&lt;br /&gt;
			:css('padding', '1em 1em 0.8em')&lt;br /&gt;
			:node(entete(args, page, doc, existeDoc))&lt;br /&gt;
			:wikitext(protection(page, doc, existeDoc))&lt;br /&gt;
			:node(contenu(args, doc, existeDoc))&lt;br /&gt;
			:node(notice(args, page, doc, existeDoc))&lt;br /&gt;
&lt;br /&gt;
	--Catégorisation des modules, en rangeant à part les modules de données&lt;br /&gt;
	if page.namespace == 828 and page.subpageText ~= 'Bac à sable' and page.subpageText ~= 'Test' then&lt;br /&gt;
		if page.isSubpage and page.baseText == 'Carte/données' then&lt;br /&gt;
			res:wikitext(&amp;quot;[[Catégorie:Module de paramétrage de carte]]&amp;quot;)&lt;br /&gt;
		elseif page.isSubpage and page.baseText == 'Country data' then&lt;br /&gt;
			res:wikitext(&amp;quot;[[Catégorie:Module d'informations pays]]&amp;quot;)&lt;br /&gt;
		else&lt;br /&gt;
			res:wikitext(&amp;quot;[[Catégorie:Module en langage Lua]]&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return tostring(res)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.documentation(frame)&lt;br /&gt;
	local args = {}&lt;br /&gt;
	local argsParent = frame:getParent().args&lt;br /&gt;
&lt;br /&gt;
	--Paramètres vides interprétés par Lua&lt;br /&gt;
	for cle, val in pairs(argsParent) do&lt;br /&gt;
		if val ~= '' then&lt;br /&gt;
			args[cle] = mw.text.trim(val)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return p._documentation(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.nomDocumentation(frame)&lt;br /&gt;
	if frame.args[1] and mw.text.trim(frame.args[1]) ~= '' then&lt;br /&gt;
		return frame.args[1]&lt;br /&gt;
	else&lt;br /&gt;
		local titreDoc = nomDocumentation(mw.title.getCurrentTitle())&lt;br /&gt;
		if mw.title.new(titreDoc).exists then&lt;br /&gt;
			return titreDoc&lt;br /&gt;
		end &lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Jacques Ducloy</name></author>
		
	</entry>
</feed>