Aller au contenu

Module:Infobox/Gratte-ciel

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 7 mars 2015 à 09:09 et modifiée en dernier par Zolo (discuter | contributions) (ajout paramètre "type" par cohérence avec infobox Monument, et pour apparemment nécessaire pour la Tour Eiffel). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

 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 Gratte-ciel.


local building = require "Module:Infobox/Fonctions/Bâtiment"
local general = require "Module:Infobox/Fonctions"
local wikidata = require "Module:Wikidata"

local function keydate(event, item)
	return  wikidata.getTheDate{property = 'P793', targetvalue = event, addcat = true, item = item}
end

return 
	{
	maincolor = '#E6E3CF',
	parts =
    	{
			general.title(),
			general.logo(),
			building.mainimage(),
			{type = 'table', title = 'Histoire', rows = {
				{type = 'mixed', label = 'Ancien(s) nom(s)', value = 'anciens noms'},
				building.creator(),
				{type = 'mixed', label = 'Dévelopeur', value = 'développeur'},
				{type = 'mixed', label = 'Conception', value = 'conception'},
				{type = 'mixed', label = 'Construction', value = 'construction', wikidata = keydate('Q385378', item)},
				{type = 'mixed', label = 'Coût', value = 'coût'},
				{type = 'mixed', label = 'Inauguration', value = 'inauguration', wikidata = keydate('Q1417098', item)},
				{type = 'mixed', label = 'Rénovation', value = 'rénovation', wikidata = keydate('Q2144402', item)},
				{type = 'mixed', label = 'Restructuration', value = 'restructuration', }, -- 'Q1376796'?
				{type = 'mixed', label = 'Fermeture', value = 'fermeture', wikidata = keydate('Q14954904', item)},
				{type = 'mixed', label = 'Démolition', value = 'démolition', wikidata = keydate('Q331483', item)},
				{type = 'mixed', label = 'Destruction', value = 'destruction', wikidata = keydate('Q17781833', item)},
				{type = 'mixed', label = 'Statut', value = 'statut'}, --= en construction / construit
				{type = 'mixed', label = 'Usage', value = 'usage', property = 'P366'}
				}
			},
			{type = 'table', title = 'Architecture', rows = {
				{type = 'mixed', label = 'Type', value = 'type'}, --property = 'P31'},
				building.archistyle(),
				building.material(),
				building.protection(),
				{type = 'mixed', label = 'Hauteur de l\'antenne' , value = 'antenne flèche'},
				{type = 'mixed', label = 'Hauteur du toit', value = 'toit'},
				{type = 'mixed', label = 'Hauteur du dernier étage', value = 'dernier étage' },
				{type = 'mixed', label = 'Nombre d\'étages', value = 'étages', wikidata = function(localdata, item)
					local vals = wikidata.getClaims({item = item, property = 'P1101'})
					if vals and (#vals == 1) then -- s'il y a plusieurs valeurs -> laisser tomber, trop compliqué
						-- le nombre d'étages est inférieur au de 1 par rapport à P1101 (nombre de niveaux)
						vals = wikidata.formatStatement(vals[1], {formatting = 'raw'}) - 1 
					end
					if vals and vals > 0 then
						return vals .. '[[Catégorie:Page utilisant des données de Wikidata/P1101]]'
					end end
					},
				{type = 'mixed', label = 'Niveaux en sous-sols', value = 'sous-sol', property = 'P1139'},
				{type = 'mixed', label = 'Chambres/Appartements', value = 'chambres'},
				{type = 'mixed', label = 'Superficie', value = 'superficie'},
				{type = 'mixed', label = 'Volume', value = 'volume'},
				{type = 'mixed', label = 'Nombre d\'ascenseurs', value = 'ascenseurs'},
				}
			},
			{type = 'table', title = 'Administration', rows = {
				{type = 'mixed', label = 'Contracteur' , value = 'contracteur'},
				{type = 'mixed', label = 'Occupant', value = 'occupant', property = 'P466' },
				{type = 'mixed', label = 'Propriétaire', value = 'propriétaire', property = 'P127'},
				building.website()
				}
			},
			{type = 'table', title = 'Géographie', rows = {	
				building.country(),
				building.historicalregion(),
				building.adminlocation(),
				building.coordinates(),
				}
			},
			building.geoloc(),
	}
}