Module:Infobox/Centrale/Bac à sable

 Documentation[voir] [modifier] [historique] [purger]

Cette page définit un module d'infobox. Pour les conseils sur l'usage de ce module, voyez Modèle:Infobox Centrale/Bac à sable.


local general = require "Module:Infobox/Fonctions"
local localdata = require "Module:Infobox/Localdata"
local wikidata = require "Module:Wikidata"
local power = require "Module:Infobox/Fonctions/Centrale électrique"

local function title(icon, style, subtitleparam, subtitlequery)
	return {
		type = 'title',
		value = function() 
			return localdata['nom'] or localdata['Nom'] 
				or wikidata.getLabel(localdata.item) and mw.language.getContentLanguage():ucfirst( wikidata.getLabel(localdata.item) )
				or mw.title.getCurrentTitle().text
		end,
		subtitle = function() return localdata[subtitleparam] end,
		wikidatasubtitle = subtitlequery,
		icon = icon,
		style = style,
	}
end

return {
	maincolor = '#B4B9C3',
	parts = {
		title(),
		general.mainimage('Article à illustrer Centrale', 'Defaut 2.svg'),
		{type = 'table', title = 'Administration', rows = {
			power.adminlocation(),
			general.coordinates(),
			{type = 'row',
				label = 'Propriétaire',
				plurallabel = 'Propriétaires',
				value = function ( localdata )
					return localdata[ 'propriétaire' ] or localdata[ 'Propriétaire' ]
				end,
				wikidata = {property = 'P127', atdate = "today", showdate = true, sorttype = 'inverted', precision = 'year', showqualifiers = "P1107", qualiftargetunit = 'percent'}
			},
			power.operateur(),
			{type = 'row', label = 'Construction', value = 'année de construction', property = 'P571'},
			{
				type = 'row',
				label = 'Mise en service',
				value = function ( localdata )
					return localdata[ 'Mis en service' ] or localdata[ 'date de mise en service' ]
				end,
				property = 'P729'
			},
			{
				type = 'row',
				label = 'Mise à l’arrêt définitif',
				value = function ( localdata )
					return localdata[ 'Fermeture' ] or localdata[ 'date de fermeture' ] or localdata[ 'date de mise à l’arrêt définitif' ]
				end,
				property = 'P730'
			},
			{type = 'row', label = 'Début de démantèlement', value = 'date de début de démantèlement'},
			{type = 'row', label = 'Fin de démantèlement', value = 'date de fin de démantèlement'},
			{
				type = 'row',
				label = 'Statut',
				value = function ( localdata )
					return localdata[ "statut" ] or localdata[ "Statut" ]
				end,
				wikidata = {property = 'P5817', defaultlink = '-'}
			},
			{
				type = 'row',
				label = 'Direction',
				value = function ( localdata )
					return localdata[ "directeur" ] or localdata[ "directrice" ]
				end,
				property = 'P1037'
			},
			{
				type = 'row',
				label = 'Effectifs',
				value = function ( localdata )
					return localdata[ "effectifs" ] or localdata[ "Effectifs" ]
				end,
				property = 'P1128'
			},
		}},
		{type = 'table', title = 'Caractéristiques', rows = {
			{type = 'row', label = 'Nom (en langue locale)', value = 'nom_po', property = 'P1705'},
			{
				type = 'row', 
				label = "Type d'installation", 
				value = function ( localdata )
					return localdata[ "type installation" ] or localdata[ "Type" ]
				end,
				wikidata = {property = 'P31', targetvalue = {'Q2298412','Q1003207','Q285927','Q194356','Q50687555','Q1357601','Q50688182','Q49833','Q15911738','Q3068975','Q25509593','Q1411996','Q2308605','Q200297','Q1434958','Q6558431','Q53951823','Q2944640','Q3498533','Q261604','Q1427536','Q61867910','Q1601458','Q900729','Q864553','Q64447720','Q30565277','Q134447','Q13416228','Q1534713','Q339353','Q40326351','Q810924'}}
				-- 'Q2298412' : centrale électrique solaire, 'Q1003207' : centrale solaire photovoltaïque, 'Q285927' : centrale solaire thermodynamique
				-- 'Q194356' : parc éolien, 'Q50687555' : parc éolien terrestre, 'Q1357601' : parc éolien en mer, 'Q50688182' : parc éolien flotant, 'Q49833' : éolienne, 
				-- 'Q15911738' : centrale hydroélectrique, 'Q3068975' : ferme à vagues, 'Q25509593' : centrale marémotrice, 'Q1411996' : centrale hydroélectrique au fil de l'eau, 'Q2308605' : centrale hydroélectrique de lac,
				-- 'Q200297' : centrale thermique, 'Q1434958' : centrale à énergie fossile, 'Q6558431' : centrale au charbon, 'Q53951823' : centrale au lignite, 'Q2944640' : centrale électrique au gaz, 'Q3498533' : centrale électrique au gaz naturel, 'Q261604' : centrale électrique au pétrole, 'Q1427536' : centrale à turbine à gaz
				-- 'Q61867910' : centrale de cogénération, 'Q1601458' : centrale de cogénération chaleur et électricité, 'Q900729' : centrale à cycle combiné, 'Q864553' : centrale de cogénération chaleur et électricité à la biomasse, 'Q64447720' : centrale électrique et usine de dessalement intégrée,
				-- 'Q30565277' : centrale géothermique, 'Q134447' : centrale nucléaire, 'Q13416228' : incinérateur de déchets, 'Q1534713' : navire-centrale,
				-- 'Q339353' : centrale de pompage-turbinage, 'Q40326351' : centrale de stockage, 'Q810924' : centrale de stockage par batterie
			},
			{
				type = 'row',
				label = 'Énergie utilisée',
				value = function ( localdata )
					return localdata[ "énergie" ] or localdata[ "Énergie" ]
				end,
				property = 'P618'
			},
			{
				type = 'row',
				label = 'Technologie',
				value = function ( localdata )
					return localdata[ "technologie" ] or localdata[ "Technologie" ]
				end,
			},
			{type = 'row',
				label = 'Fournisseurs des réacteurs',
				value = function ( localdata )
					return localdata[ "fournisseur réacteur" ] or localdata[ "fournisseurs" ]
				end,
			},
			{type = 'row',
				label = 'Type de reacteurs',
				value = function ( localdata )
					return localdata[ "type réacteur" ] or localdata[ "type" ]
				end,
			},
			{type = 'row', label = 'Réacteurs actifs', value = 'réacteurs actifs'},
			{
				type = 'row',
				label = 'Nombre de puits géothermiques',
				value = function ( localdata )
					return localdata[ "géo puit" ] or localdata[ "Géo puit" ]
				end,
			},
			{
				type = 'row',
				label = 'Profondeur maximale des puits',
				value = function ( localdata )
					return localdata[ "géo profondeur" ] or localdata[ "Géo profondeur" ]
				end,
			},
			{
				type = 'row',
				label = 'Nombre de turbines',
				value = function ( localdata )
					return localdata[ "turbine" ] or localdata[ "Turbine" ]
				end,
			},
			{
				type = 'row',
				label = 'Type de turbine',
				value = function ( localdata )
					return localdata[ "type turbine" ] or localdata[ "Type turbine" ]
				end,
			},
			{
				type = 'row',
				label = "Nombre d'éoliennes",
				value = function ( localdata )
					return localdata[ "éoliennes" ] or localdata[ "Éoliennes" ]
				end,
			},
			{
				type = 'row',
				label = "Type d'éoliennes",
				value = function ( localdata )
					return localdata[ "type éoliennes" ] or localdata[ "Type éoliennes" ]
				end,
			},
			{type = 'row',
				label = 'Superficie',
				value = function ( localdata )
					return localdata[ "surface" ] or localdata[ "Surface" ]
				end,
				property = 'P2046'
			},
			{
				type = 'row',
				label = 'Surface photovoltaïque',
				value = function ( localdata )
					return localdata[ "sol surface" ] or localdata[ "Sol surface" ]
				end,
			},
			{
				type = 'row', 
				label = 'Puissance installée', 
				value = function ( localdata )
					local puissance = localdata[ "puissance_installée" ] or localdata[ "Capacité" ] or localdata[ "puissance nominale" ]
					if puissance and string.find(puissance, "^%d*%s?%d+[.,]?%d*%s[kMGT]?W$") then return "{{unité|" .. puissance .. "}}"
					else return puissance
					end
				end,
				wikidata = {property = 'P2109', showlink = true}
			},
					{
				type = 'row', 
				label = 'Puissance thermique installée', 
				value = function ( localdata )
					return localdata[ "puissance_thermique_installée" ] or localdata[ "Capacité_t" ]
				end,
			},
		}},
		{type = 'table', title = 'Production d’électricité', rows = {
			{
				type = 'row', 
				label = 'Production annuelle',
				value = function ( localdata )
					return localdata[ "Production" ] or localdata[ "Production annuelle d'électricité" ] or localdata[ "production annuelle d'électricité" ]
				end,
				wikidata = {property = 'P4131', showdate = 'true', numval = 1, sorttype = "inverted", showlink = true}
			},
			{
				type = 'row',
				label = 'Production moyenne',
				value = function ( localdata )
					return localdata[ "Production moyenne" ] or localdata[ "production moyenne" ]
				end,
			},
			{type = 'row', label = 'Production totale', value = 'production totale'},
			power.facteurcharge(),
			power.densitepuissance(),
			{
				type = 'row',
				label = 'Émissions atmosphériques',
				value = function ( localdata )
					return localdata[ "Émissions" ] or localdata[ "émissions" ]
				end,
			},
		}},
		{type = 'table', separator = true, rows = {
			{
				type = 'row',
				label = 'Source froide',
				value = function ( localdata )
					return localdata[ 'Source froide' ] or localdata[ 'source froide' ]
				end,
			},
			{type = 'row', label = 'Architecte', value = 'architecte', property = 'P84'},
			{type = 'row', label = 'Coût', value = 'coût', property = 'P2130'},
			{type = 'row', label = 'Site web', value = 'url', property = 'P856'},
		}},
		general.geoloc({default_zoom=7, maptype='relief'})
	}
}