« Module:Biblio/Ouvrage » : différence entre les versions

Contenu supprimé Contenu ajouté
TigH (discussion | contributions)
m A protégé « Module:Biblio/Ouvrage » : Modèle très utilisé ([Modifier=Autoriser uniquement les utilisateurs auto-confirmés] (infini) [Renommer=Autoriser uniquement les utilisateurs auto-confirmés] (infini))
ajout « traduction titre » et « nature ouvrage », paramètre « nolien » considéré catégorisé comme une erreur.
Ligne 22 :
args['titre chapitre'] = false
args.chap = false
args['sous-titre chapitre'] = validArg( 'sous-titre chapitre', 'sous-titre' )
args['sous-titre'] = validArg( 'sous-titre ouvrage', 'sous-titre' )
if args['sous-titre chapitre'] == args['sous-titre'] then
args['sous-titre'] = false
Ligne 34 :
function Ouvrage.ouvrage( args, chapitre )
-- La table wiki va recevoir tout les petits bouts de texte, et sera concaténtée à la fin.
-- Elle utilise la metat-table de TableBuilder, permettant d'utiliser les fonctions de la
-- librairy table comme des mèthodes. minsert permet d'insérer plusieurs élément en une
-- seule fois en, ignorant les paramètre nil.
local wiki = TableBuilder.new()
Ligne 70 :
if validArg( 'auteurs' ) then
wiki.minsert( args.auteurs )
else
wiki.minsert( Commun.responsabilitePrincipale( args, validArg, true ) )
end
local coauteur = validArg( 'co-auteur', 'coauteurs', 'coauteur', 'coauthors' )
Ligne 125 :
end
wiki.minsert( args.titre )
local sousTitre = validArg( 'sous-titre' )
if sousTitre then
wiki.minsert( ( codeLangue and ': ' ) or ' : ', sousTitre )
end
if lienTitre then
wiki.minsert( ']]' )
end
wiki.minsert( '</cite>' )
Ligne 149 :
end
end
-- titre original et traducteur
local original = validArg( 'titre original', 'titre vo', 'traduction titre' )
if original and original ~= args.titre then
wiki.minsert( ' [« ', original, ' »]' )
Ligne 181 :
Langue = Langue or require( 'Module:Langue' )
wiki.minsert( Langue.lang{ codeLangue, titreVolTome }, [['']] )
else
wiki.minsert( titreVolTome, [['']] )
end
Ligne 196 :
if lienEditeur then
wiki.minsert( ', [[', lienEditeur, '|', editeur, ']]' )
else
wiki.minsert( ', ', editeur )
end
end
-- nature du document
local nature = validArg( 'nature ouvrage' )
if nature then
wiki.minsert( ' (', nature, ')')
end
Ligne 213 ⟶ 219 :
local numeroCollection = validArg( 'numéro dans collection', 'numéro dans la collection' )
if numeroCollection then
wiki.minsert( ' (', Commun.numero, numeroCollection, ')' )
end
-- date, réimpression et éditions
Ligne 247 ⟶ 253 :
local reference = validArg( 'référence' )
if reference then
wiki.minsert( ' ', Commun.detailEditions( reference ) )
end
local refSimple = validArg( 'référence simplifiée', 'ref' )
if refSimple then
wiki.minsert( ' ', Commun.detailEdition( refSimple ) )
end
Ligne 267 ⟶ 273 :
References.doi( validArg( 'doi' ) ),
References.pmid( validArg( 'pmid' ) ),
References.jstor( validArg( 'jstor' ) )
)
local url = validArg( 'lire en ligne', 'url', 'url texte' )
if url then
enligne.insert( References.enLigne{
lien = url,
texte = 'lire en ligne',
} )
Ligne 279 ⟶ 285 :
local ecouterEnLigne = validArg( 'écouter en ligne' )
if ecouterEnLigne then
enligne.insert( References.enLigne{
lien = ecouterEnLigne,
texte = 'écouter en ligne',
} )
Ligne 286 ⟶ 292 :
local resume = validArg( 'présentation en ligne', 'résumé' )
if resume then
enligne.insert( References.enLigne{
lien = resume,
texte = 'présentation en ligne',
Ligne 298 ⟶ 304 :
end
]=]
 
wiki.minsert( ' <small>', mw.text.nowiki( '(' ), enligne.concat( ', ' ), ')</small>' )
end
Ligne 322 ⟶ 328 :
wiki.minsert( ', « ', titreChapitre, ' »' )
end
end
local passage = validArg( 'passage', 'page' )
if passage then
wiki.minsert( ', ', Commun.page, passage )
end
-- ajout des méthadonnées COinS (ContextObjects in Spans)
Ligne 332 ⟶ 338 :
-- fin du span (id) et de la description de l'ouvrage
wiki.minsert( '</span>' )
-- citation et commentaire de cet ouvrage
local citation = validArg( 'extrait', 'citation' )
if citation then
wiki.minsert( ' :<blockquote>« ', citation, ' »</blockquote>' )
end
if validArg( 'plume' ) then
wiki.minsert( Commun.plume )
Ligne 344 ⟶ 350 :
wiki.minsert( Commun.commentaire( args ) )
if mw.title.getCurrentTitle().namespace == 0 and modeNormal then
wiki.minsert(
categLangue and '[[Catégorie:Page du modèle Ouvrage comportant une erreur|langue]]',
categTitre and '[[Catégorie:Page du modèle Ouvrage comportant une erreur|titre]]',
Ligne 352 ⟶ 358 :
categTitreOuvrage and '[[Catégorie:Page du modèle Chapitre comportant une erreur|Ouvrage]]'
)
if args.nolien then
wiki.minsert( '[[Catégorie:Page du modèle Ouvrage comportant une erreur|nolien]]' )
end
end