<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://gregorius.dsi.universite-paris-saclay.fr/w/index.php?action=history&amp;feed=atom&amp;title=Module%3ABiblio%2FLien_web</id>
	<title>Module:Biblio/Lien web - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://gregorius.dsi.universite-paris-saclay.fr/w/index.php?action=history&amp;feed=atom&amp;title=Module%3ABiblio%2FLien_web"/>
	<link rel="alternate" type="text/html" href="https://gregorius.dsi.universite-paris-saclay.fr/w/index.php?title=Module:Biblio/Lien_web&amp;action=history"/>
	<updated>2026-05-16T06:38:13Z</updated>
	<subtitle>Historique des révisions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.35.4</generator>
	<entry>
		<id>https://gregorius.dsi.universite-paris-saclay.fr/w/index.php?title=Module:Biblio/Lien_web&amp;diff=661&amp;oldid=prev</id>
		<title>Admin : 1 révision importée</title>
		<link rel="alternate" type="text/html" href="https://gregorius.dsi.universite-paris-saclay.fr/w/index.php?title=Module:Biblio/Lien_web&amp;diff=661&amp;oldid=prev"/>
		<updated>2016-01-25T11:24:03Z</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 Lien = { }&lt;br /&gt;
&lt;br /&gt;
local Commun = require( 'Module:Biblio/Commun' )&lt;br /&gt;
local References = require( 'Module:Biblio/Références' )&lt;br /&gt;
local Outils = require( 'Module:Outils' )&lt;br /&gt;
local TableBuilder = require( 'Module:TableBuilder' )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function Lien.lienWeb( args )&lt;br /&gt;
	-- La table wiki va recevoir tout les petits bouts de texte, et sera concaténée à la fin.&lt;br /&gt;
	-- Elle utilise la meta-table de TableBuilder, permettant d'utiliser les fonctions de la&lt;br /&gt;
	-- library table comme des méthodes. minsert permet d'insérer plusieurs éléments en une&lt;br /&gt;
	-- seule fois en, ignorant les valeurs nil.&lt;br /&gt;
	local wiki = TableBuilder.new()&lt;br /&gt;
	&lt;br /&gt;
	-- validArg renvoie le premier paramètre non vide, ou nil s'ils sont tous vides.&lt;br /&gt;
	-- Seuls les noms des paramètres doivent être transmis à la fonction.&lt;br /&gt;
	local validArg = function ( ... ) return Commun.validTextArg( args, ... ) end&lt;br /&gt;
	&lt;br /&gt;
	-- Variables servant à la catégorisation&lt;br /&gt;
	args.categ = {}&lt;br /&gt;
	&lt;br /&gt;
	-- Span initial, id&lt;br /&gt;
	local spanInitial, spanFinal = Commun.spanInitial ( args, validArg )&lt;br /&gt;
	wiki.minsert( spanInitial,  Commun.libelle( args ) )&lt;br /&gt;
	&lt;br /&gt;
	-- indication de langue&lt;br /&gt;
	local indicLangue, codeLangue = Commun.indicationDeLangue ( args, validArg )&lt;br /&gt;
	if Outils.notEmpty( indicLangue ) then&lt;br /&gt;
		wiki.minsert( indicLangue, ' ' )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Liste des auteurs et de leurs responsabilités (principales et secondaires)&lt;br /&gt;
	local auteur = validArg( 'nom1', 'nom', 'auteur1', 'auteur', 'auteurs', 'auteur institutionnel', 'last1', 'last', 'author1', 'author' )&lt;br /&gt;
	if auteur then&lt;br /&gt;
		if validArg( 'auteurs' ) then&lt;br /&gt;
			wiki.minsert( args.auteurs )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( Commun.responsabilitePrincipale( args, validArg, true ) )&lt;br /&gt;
		end&lt;br /&gt;
		local coauteur = validArg( 'co-auteur', 'coauteurs', 'coauteur', 'coauthors' )&lt;br /&gt;
		if coauteur then&lt;br /&gt;
			wiki.minsert( ', ', coauteur )&lt;br /&gt;
		end&lt;br /&gt;
		wiki.minsert( Commun.responsabiliteSecondaire( args, validArg ), ', ' )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- url&lt;br /&gt;
	local url = validArg( 'url', 'lire en ligne', 'url texte' )&lt;br /&gt;
	if url then&lt;br /&gt;
		-- remplacement des crochets et espaces par leur équivalent HTML&lt;br /&gt;
		url = string.gsub( string.gsub( string.gsub( url, ' ', '%%20' ), '%[', '%%5B' ), '%]', '%%5D' )&lt;br /&gt;
		-- ajout http:// si nécessaire :&lt;br /&gt;
		if not ( string.match( url, '^http' ) or string.match( url, '^ftp' ) or string.match( url, '^//' ) ) then&lt;br /&gt;
			url = 'http://' .. url&lt;br /&gt;
		end&lt;br /&gt;
		wiki.minsert( '[', url )&lt;br /&gt;
	elseif not validArg( 'pmid', 'pmcid', 'doi', 'jstor', 'bibcod', 'math reviews', 'zbl', 'zbmath', 'arxiv' ) then&lt;br /&gt;
		args.categ.url = true&lt;br /&gt;
		wiki.minsert( Outils.erreur( 'modèle [[Modèle:Lien web|{{Lien web}}]] : paramètre « &amp;lt;code&amp;gt;url&amp;lt;/code&amp;gt; » manquant' ) )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- titre&lt;br /&gt;
	local titre = validArg( 'titre', 'title' )&lt;br /&gt;
	local description = validArg( 'description' )&lt;br /&gt;
	if titre then&lt;br /&gt;
		-- suppression des retours ligne éventuels, sinon MediaWiki ne reconnaît pas le lien externe&lt;br /&gt;
		-- et remplacement des crochets par leur équivalent HTML (uniquement le crochet de fermeture)&lt;br /&gt;
		titre = titre:gsub( '\n', ' ' ):gsub ( '%]', '&amp;amp;#93;' )&lt;br /&gt;
		local  c = titre:sub(1,1)&lt;br /&gt;
		-- on teste d'abord si titre contient déjà des guillemets &lt;br /&gt;
		if(string.byte(c) ~= 194) then &lt;br /&gt;
			local sousTitre&lt;br /&gt;
			if validArg( 'sous-titre' ) then&lt;br /&gt;
				sousTitre = ' : ' .. args['sous-titre']&lt;br /&gt;
				sousTitre:gsub( ' ?»$', '' )&lt;br /&gt;
			else&lt;br /&gt;
				titre:gsub( ' ?»$', '' )&lt;br /&gt;
			end&lt;br /&gt;
			wiki.minsert( ' « &amp;lt;cite style=&amp;quot;font-style: normal&amp;quot;&amp;gt;', titre, sousTitre, '&amp;lt;/cite&amp;gt; »', url and ']' )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( ' ', titre, url and ']' )&lt;br /&gt;
		end&lt;br /&gt;
		local traductionTitre = validArg( 'traduction titre' )&lt;br /&gt;
		if traductionTitre and traductionTitre ~= args.titre then&lt;br /&gt;
			wiki.minsert( ' [« ', traductionTitre, ' »]' )&lt;br /&gt;
		end&lt;br /&gt;
		if description then&lt;br /&gt;
			wiki.minsert( ', ', description )&lt;br /&gt;
		end&lt;br /&gt;
	elseif description then&lt;br /&gt;
		wiki.minsert( ' ', description, url and ']' )&lt;br /&gt;
	else&lt;br /&gt;
		args.categ.titre = true&lt;br /&gt;
		if args.categ.url then&lt;br /&gt;
			wiki.minsert( Outils.erreur( ' et paramètre « &amp;lt;code&amp;gt;titre&amp;lt;/code&amp;gt; » manquant' ) )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( ' ', args.url, '] ', Outils.erreur( 'modèle [[Modèle:Lien web|{{Lien web}}]] : paramètre « &amp;lt;code&amp;gt;titre&amp;lt;/code&amp;gt; » manquant' ) )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- format&lt;br /&gt;
	wiki.minsert( References.indicationDeFormat( validArg( 'format électronique', 'format' ) ) )&lt;br /&gt;
	&lt;br /&gt;
	-- série, site, éditeur&lt;br /&gt;
	local serie = validArg( 'série', 'work' )&lt;br /&gt;
	if serie then&lt;br /&gt;
		wiki.minsert( [[, '']], serie, [['']] )&lt;br /&gt;
		args.categ.work = validArg( 'work' )	-- il y a ambiguïté sur l'utilisation de ce paramètre&lt;br /&gt;
	end&lt;br /&gt;
	local site = validArg( 'site', 'website' )&lt;br /&gt;
	if site then&lt;br /&gt;
		wiki.minsert( [[, sur '']], site, [['']] )&lt;br /&gt;
	end&lt;br /&gt;
	local periodique = validArg( 'périodique' )&lt;br /&gt;
	if periodique then&lt;br /&gt;
		wiki.minsert( ', ', periodique )&lt;br /&gt;
	end	&lt;br /&gt;
	local lieu = validArg( 'lieu', 'lieu édition', 'location' )&lt;br /&gt;
	if lieu then&lt;br /&gt;
		wiki.minsert( ', ', lieu )&lt;br /&gt;
	end	&lt;br /&gt;
	local editeur = validArg( 'éditeur', 'publisher', 'editeur' )&lt;br /&gt;
	if editeur then&lt;br /&gt;
		local lienEditeur = validArg( 'lien éditeur' )&lt;br /&gt;
		if lienEditeur then&lt;br /&gt;
			wiki.minsert( ', [[', lienEditeur, '|', editeur, ']]' )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( ', ', editeur )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- date&lt;br /&gt;
	if validArg( 'année', 'date', 'year', 'en ligne le', 'en ligne' ) then&lt;br /&gt;
		args.date = validArg( 'date', 'en ligne le', 'en ligne' )&lt;br /&gt;
		wiki.minsert( ',&amp;amp;lrm; ', Commun.inscriptionDate( args ) )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- liens externe (isbn, doi...) et &amp;quot;consulté le&amp;quot; entre parenthèses, et en plus petit, sauf en note&lt;br /&gt;
	wiki.minsert( References.affichageLiensExternes( args, validArg, false, true ) )&lt;br /&gt;
	&lt;br /&gt;
	-- fin du span&lt;br /&gt;
	wiki.minsert( spanFinal )&lt;br /&gt;
	&lt;br /&gt;
	-- citation&lt;br /&gt;
	local citation = validArg( 'citation', 'extrait', 'quote' )&lt;br /&gt;
	if citation then&lt;br /&gt;
		wiki.minsert( ' : &amp;lt;span class=&amp;quot;citation&amp;quot;&amp;gt;« ', citation, ' »&amp;lt;/span&amp;gt;' )&lt;br /&gt;
	end&lt;br /&gt;
	local passage = validArg( 'page', 'pages', 'passage' )&lt;br /&gt;
	if passage then&lt;br /&gt;
		if string.match( passage, '^[%dIVXLCM]' ) then&lt;br /&gt;
			wiki.minsert( ', ', Commun.page, passage )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( ', ', passage )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if mw.title.getCurrentTitle().namespace == 0 then&lt;br /&gt;
		wiki.minsert(&lt;br /&gt;
		args.categ.langue and '[[Catégorie:Page du modèle Lien web comportant une erreur|langue]]',&lt;br /&gt;
		args.categ.url and '[[Catégorie:Page du modèle Lien web comportant une erreur|Url]]',&lt;br /&gt;
		args.categ.titre and '[[Catégorie:Page du modèle Lien web comportant une erreur|titre]]',&lt;br /&gt;
		args.categ.issnInvalid and '[[Catégorie:Page avec ISSN invalide]]'&lt;br /&gt;
		)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return wiki.concat()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return Lien&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>