local wikidata = require "Module:Utilitaire Wikidata"
local general = require "Module:Infobox/Fonctions"
local outils = require "Module:Outils"
local function race(name, edition)
if not(name or edition) then
return nil
end
return (edition or '') .. ' ' .. (name or ' Edición')
end
return
{
maincolor = '#FFDF80',
parts =
{
{
type = 'title',
value = 'nom',
icon = 'entete cyclisme',
},
general.mainimage(),
{type = 'table', title = 'Detalles', rows = {
{ type = 'row',
label = 'Carrera',
value = function() return race(localdata['Carrera'], localdata['Edición']) end,
wikidata = function()
local edition = wikidata._formatStatements{property = 'P393', entity = item, displayformat = function(snak) return outils.ordinal(snak.datavalue.value) end}
local name = wikidata.formatAndCat{property = 'P31', entity = item}
if edition then
edition = edition .. wikidata.addtrackingcat('P393')
end
return race(name, edition)
end
},
{type = 'row', label = 'Nombre oficial', value = 'Nombre oficial', property = 'P1448'},
{type = 'row', label = 'Válida para', value = 'Competición', property = 'P361'},
{type = 'row', label = 'Etapas', value = 'Etapas', wikidata =
function() -- suppose que P527 ne contienne que des étapes, et contienne toutes les étapes
local stages = wikidata.getClaims{entity = item, property = 'P527'}
if not stages then
return nil
end
local str = tostring(#stages)
str = wikidata.addLinkback(str, item, 'P527')
str = str .. wikidata.addtrackingcat('P527')
return str
end
},
{type = 'row', label = 'Fecha', value = 'Fecha', wikidata = function() return wikidata.maindate(item) end},
{type = 'row', label = 'Distancia total', value = 'Distancia total'}, -- remplissage manuel en attendant la possibilité d'utiliser des unités sur Wikidata
general.country(),
{type = 'row', label = 'País', value = 'País'}, -- paramètre obsolète, ne plus utiliser
{type = 'row', label = 'Lugar de inicio', property = 'P1427'},
{type = 'row', label = 'Lugar de llegada', property = 'P1444'},
{type = 'row', label = 'Ciclistas participantes', wikidata =
function()
return wikidata.formatAndCat({entity = item, property = 'P1132', qualifier = 'P276', qualifiervalue = 'Q15053706'})
end
},
{type = 'row', label = 'Equipos', value = 'Equipos', wikidata =
function() -- suppose que P1923 ne contienne que des équipes, et contienne toutes les équipes
local teams = wikidata.getClaims{entity = item, property = 'P1923'}
if not teams then
return nil
end
local str = tostring(#teams)
str = wikidata.addLinkback(str, item, 'P1923')
str = str .. wikidata.addtrackingcat('P1923')
return str
end
},
{type = 'row', label = 'Ciclistas finalizados', wikidata = function() return wikidata.formatAndCat({entity = item, property = 'P1132', qualifier = 'P276', qualifiervalue = 'Q15053716'}) end },
{type = 'row', label = 'Ciclistas participantes', value = 'Ciclistas participantes'}, -- paramètre obsolète, ne plus utiliser
{type = 'row', label = 'Ciclistas finalizados', value = 'Ciclistas finalizados'}, -- paramètre obsolète, ne plus utiliser
},
},
{type = 'table', title = 'Resultados', rows = {
{type = 'row', label = 'Primero', value = 'Primero', property = 'P1346'}, -- solution provisoire, il faudra aller chercher le premier du classement général lorsque la propriété aura été créée
{type = 'row', label = ' ', value = 'Ganador de velocidad'}, -- remplissage manuel en attendant la possibilité d'utiliser des unités sur Wikidata
{type = 'row', label = 'Segundo', value = 'Segundo'}, -- même commentaire que pour le champ du vainqueur
{type = 'row', label = 'Tercero', value = 'Tercero'}, -- même commentaire que pour le champ du vainqueur
{type = 'row', label = 'Puntos', value = 'Puntos'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
{type = 'row', label = 'Montaña', value = 'Montaña'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
{type = 'row', label = 'Meilleur sprinteur', value = 'meilleur_sprinteur'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
{type = 'row', label = 'Jóvenes', value = 'Jóvenes'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
{type = 'row', label = 'Combatividad', value = 'Combatividad'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
{type = 'row', label = 'Vainqueur du combiné', value = 'classement_combiné'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
{type = 'row', label = 'Equipos', value = 'Equipos'}, -- solution provisoire dans l'attente de la création d'une nouvelle propriété
},
},
{type = 'images',
imageparameters = {'mapa'},
property = 'P242',
numval = 1
},
{type = 'navbox',
previousparameter = "competencia anterior",
previousproperty = "P155",
nextparameter = "próxima competencia",
nextproperty = "P156",
class = 'bordered',
},
}
}