« Module:Bandeau de source » : différence entre les versions

De Les Archives de Vault-Tec
Kharmitch (discussion | contributions)
Page créée avec « local p = {} function p.build(frame) local data = require( 'Module:Bandeau de source/Données' )[frame.args.nom] local arg = frame.args[1] or '' local text = '' i… »
 
Kharmitch (discussion | contributions)
mAucun résumé des modifications
Ligne 2 : Ligne 2 :


function p.build(frame)
function p.build(frame)
local data = require( 'Module:Bandeau de source/Données' )[frame.args.nom]
local args = require( 'Module:Outils' ).extractArgs( frame )


local arg  = frame.args[1] or ''
local bannerType = args[1] or ''
local text = ''
local source = args['source'] or 'source ?'
local link = args['lien'] or ''
local image = args['image'] or 'bandeau de source - defaut.png'
local text = args['texte'] or ''
if arg == 'fin' then
local bannerText = ''
text = 'Fin des informations basées sur ' .. ( data.source or 'source ?' ) .. '.'
if bannerType == 'fin' then
bannerText = 'Fin des informations basées sur ' .. source .. '.'
else
else
text = 'Les informations suivantes se basent sur ' .. ( data.source or 'source ?' )
bannerText = 'Les informations suivantes se basent sur ' .. source
if text == 'vide' then
if text == 'vide' then
text = text .. '.'
bannerText = bannerText .. '.'
elseif text == 'contradiction' then
elseif text == 'contradiction' then
text = text .. ' et sont contredites par les sources officielles.'
bannerText = bannerText .. ' et sont contredites par les sources officielles.'
elseif text == 'avant-première' then
elseif text == 'avant-première' then
text = text .. ' et peuvent être inexactes ou contenir des \'\'spoilers\'\'.'
bannerText = bannerText .. ' et peuvent être inexactes ou contenir des \'\'spoilers\'\'.'
elseif text == 'semi' then
elseif text == 'semi' then
text = text .. ' et certains détails peuvent contredire les sources officielles.'
bannerText = bannerText .. ' et certains détails peuvent contredire les sources officielles.'
else
else
text = text .. ' et n\'ont pas été confirmées par des sources officielles.'
text = text .. ' et n\'ont pas été confirmées par des sources officielles.'
Ligne 29 : Ligne 34 :
:tag( 'div' )
:tag( 'div' )
:addClass( 'avt-source-banner-img' )
:addClass( 'avt-source-banner-img' )
:wikitext( '[[Fichier:' .. data.image .. '|x25px|link=' .. (data.link or '') .. ']]' )
:wikitext( '[[Fichier:' .. image .. '|x25px|link=' .. link .. '|alt=]]' )
:done()
:done()
:tag( 'p' )
:tag( 'p' )
:addClass( 'avt-source-banner-text' )
:addClass( 'avt-source-banner-text' )
:wikitext( text )
:wikitext( bannerText )
:allDone()
:allDone()
end
end


return p
return p

Version du 25 juin 2021 à 13:45

La documentation pour ce module peut être créée à Module:Bandeau de source/doc

local p = {}

function p.build(frame)
	local args = require( 'Module:Outils' ).extractArgs( frame )

	local bannerType = args[1] or ''
	local source = args['source'] or 'source ?'
	local link = args['lien'] or ''
	local image = args['image'] or 'bandeau de source - defaut.png'
	local text = args['texte'] or ''
	
	local bannerText = ''
	
	if bannerType == 'fin' then
		bannerText = 'Fin des informations basées sur ' .. source .. '.'
	else
		bannerText = 'Les informations suivantes se basent sur ' .. source
		
		if text == 'vide' then
			bannerText = bannerText .. '.'
		elseif text == 'contradiction' then
			bannerText = bannerText .. ' et sont contredites par les sources officielles.'
		elseif text == 'avant-première' then
			bannerText = bannerText .. ' et peuvent être inexactes ou contenir des \'\'spoilers\'\'.'
		elseif text == 'semi' then
			bannerText = bannerText .. ' et certains détails peuvent contredire les sources officielles.'
		else	
			text = text .. ' et n\'ont pas été confirmées par des sources officielles.'
		end
	end
	
	return mw.html.create( 'div' )
		:addClass( 'avt-source-banner' )
		:tag( 'div' )
			:addClass( 'avt-source-banner-img' )
			:wikitext( '[[Fichier:' .. image .. '|x25px|link=' .. link .. '|alt=]]' )
			:done()
		:tag( 'p' )
			:addClass( 'avt-source-banner-text' )
			:wikitext( bannerText )
			:allDone()
end

return p