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

De Les Archives de Vault-Tec
Kharmitch (discussion | contributions)
mAucun résumé des modifications
Kharmitch (discussion | contributions)
m Ajout de FO76PTS
Ligne 83 : Ligne 83 :
source = "le contenu saisonnier de ''[[Fallout 76]]''",
source = "le contenu saisonnier de ''[[Fallout 76]]''",
text  = "vide"
text  = "vide"
},
["FO76PTS"] = {
image  = "mbox_upcoming.png",
source = "le contenu présent sur le serveur public de test de ''[[Fallout 76]]''",
text  = "avant-première"
},
},
["FO76UP"] = {
["FO76UP"] = {

Version du 25 juillet 2021 à 22:47

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

local p = {}

------------------------------------------------------
-----     Référentiel des bandeaux de source     ----- 
------------------------------------------------------

local data = {
	["ASC"] = {
		image  = "FO76 Atomic shop logo.png",
		link   = "Boutique Atomique",
		source = "du contenu présent dans la [[boutique Atomique]]",
		text   = "vide"
	},
	["Bogué"] = {
		image  = "Icon repair.png",
		link   = "Bogues",
		source = "du contenu bogué"
	},
	["Contenu à venir"] = {
		image  = "mbox_upcoming.png",
		source = "du contenu à venir",
		text   = "avant-première"
	},
	["Contenu supprimé"] = {
		image  = "Icon_cut.png",
		link   = "Contenu supprimé",
		source = "du contenu supprimé"
	},
	["CCC"] = {
		image  = "Creation_Club_logo.jpg",
		link   = "Creation Club",
		source = "le contenu présent dans le [[Creation Club]]",
		text   = "contradiction"
	},
	["D20"] = {
		image  = "Gametitle-D20.png",
		link   = "Fallout Pen and Paper d20",
		source = "le contenu du jeu de rôle ''[[Fallout Pen and Paper d20|Fallout PnP d20]]''"
	},
	["Fixt"] = {
		image  = "Fallout fixt.jpg",
		link   = "Fallout FIXT",
		source = "le contenu restauré par le ''[[Fallout Fixt]]'' traduit par l'équipe de Fallout Génération"
	},
	["FNVCS"] = {
		image  = "Icon_cut.png",
		link   = "Contenu supprimé de Fallout: New Vegas",
		source = "le contenu supprimé de ''[[Fallout: New Vegas]]''"
	},
	["FNVTS"] = {
		image  = "Terres sauvages.png",
		link   = "Terres sauvages",
		source = "le [[trait]] [[Terres sauvages]] de ''[[Fallout: New Vegas]]''"
	},
	["FO1CS"] = {
		image  = "Icon_cut.png",
		link   = "Contenu supprimé de Fallout",
		source = "le contenu supprimé de ''[[Fallout]]''"
	},
	["FO2CS"] = {
		image  = "Icon_cut.png",
		link   = "Contenu supprimé de Fallout 2",
		source = "le contenu supprimé de ''[[Fallout 2]]''"
	},
	["FO3CS"] = {
		image  = "Icon_cut.png",
		link   = "Contenu supprimé de Fallout 3",
		source = "le contenu supprimé de ''[[Fallout: New Vegas]]''"
	},
	["FO4CS"] = {
		image  = "Icon_cut.png",
		link   = "Contenu supprimé de Fallout 4",
		source = "le contenu supprimé de ''[[Fallout 4]]''"
	},
	["FO76CC"] = {
		image  = "Icon_cut_content.png",
		link   = "Contenu supprimé de Fallout 76",
		source = "le contenu supprimé de ''[[Fallout 76]]''"
	},
	["FO76LTC"] = {
		image  = "FO76 Quest Old Man Winter.png",
		link   = "Saisons de Fallout 76",
		source = "le contenu saisonnier de ''[[Fallout 76]]''",
		text   = "vide"
	},
	["FO76PTS"] = {
		image  = "mbox_upcoming.png",
		source = "le contenu présent sur le serveur public de test de ''[[Fallout 76]]''",
		text   = "avant-première"
	},
	["FO76UP"] = {
		image  = "mbox_upcoming.png",
		source = "le prochain contenu de ''[[Fallout 76]]''",
		text   = "avant-première"
	},
	["FOBOS"] = {
		image  = "Gametitle-FOBOS.png",
		link   = "Fallout: Brotherhood of Steel",
		source = "le contenu de ''[[Fallout: Brotherhood of Steel]]''"
	},
	["FOT"] = {
		image  = "Gametitle-FOT.png",
		link   = "Fallout Tactics",
		source = "le contenu de ''[[Fallout Tactics]]''",
		text   = "semi"
	},
	["JSawyer"] = {
		image  = "Gametitle-JES.png",
		link   = "JSawyer",
		source = "le mod [[JSawyer]] pour ''[[Fallout: New Vegas]]''"
	},
	["JSE"] = {
		image  = "Gametitle-JES.png",
		link   = "J.E. Sawyer's Fallout Role-Playing Game",
		source = "le jeu de rôle ''[[J.E. Sawyer's Fallout Role-Playing Game|J.E. Sawyer's Fallout RPG]]''"
	},
	["Van Buren"] = {
		image  = "Van_Buren.png",
		link   = "Van Buren",
		source = "le contenu de ''[[Van Buren]]''"
	}
}

-----------------------------------------------------

function p.build(frame)
	local args = {}
	args.nom = frame.args.nom
	
	local argsParent = frame:getParent().args
	for cle, val in pairs(argsParent) do
		if val then
			args[cle] = mw.text.trim(val)
		end
	end
	
	return p._build(args)
end

function p._build(args)
	local banner = data[args.nom]
	
	local bannerType = args[1] or ''
	local source = banner.source or 'source ?'
	local link = banner.link or ''
	local image = banner.image or 'bandeau de source - defaut.png'
	local text = banner.text or ''
	
	local bannerText = ''
	
	if bannerType:lower() == '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 peuvent être contredites par les sources officielles.'
		else	
			bannerText = bannerText .. ' et n\'ont pas été confirmées par des sources officielles.'
		end
	end
	
	return mw.html.create( 'div' )
		:addClass( 'avt-source-banner noexcerpt' )
		:tag( 'div' )
			:addClass( 'avt-source-banner-img' )
			:wikitext( '[[Fichier:' .. image .. '|x25px|link=' .. link .. '|alt=]]' )
			:done()
		:tag( 'div' )
			:addClass( 'avt-source-banner-text' )
			:wikitext( bannerText )
			:allDone()
end

return p