Les fichiers modèles des résultats, temps intermédiaires, ticket coureur, etc. peuvent être édités avec n’importe quel éditeur de texte pour personnalisation. Par défaut, ces modèles produisent des fichiers html, mais n’importe quel format texte (csv, json, xml…) peut être généré par Geco et le moteur de rendu mustache.
Geco utilise jusqu’à quatre types de modèles différents :
Il est donc possible de changer les textes, d’insérer des logos, d’ajouter ou de supprimer certains champs de données. Les champs de donnée remplis automatiquement par Geco sont marqués par les doubles accolades {{
et }}
.
Vous pouvez modifier, créer, réutiliser ces formats dans plusieurs courses, les partager avec d’autres personnes… Très souvent un unique format est réutilisé sur plusieurs courses. On peut alors souhaiter personnaliser ce format pour chaque course (logos des sponsors, annonce spécifique) sans le recopier et l’adapter dans chaque dossier de course. C’est possible en créant ses propres champs de données dans un fichier formats.prop
des dossiers de course. Geco lit ce fichier et injecte les données contenues dans le modèle.
resultats.mustache
(fichier commun, réutilisable)
Rendez-vous le {{ProchaineEtape}}
formats.prop
(dans le dossier de course)
ProchaineEtape=23 mai au Château
Le fichier resultats.mustache
peut alors être réutilisé dans plusieurs courses sans modification, juste en copiant et modifiant le fichier formats.prop
.
Notez que tous les champs définis par Geco ont le préfixe geco_
ou i18n_
, afin d’éviter toute collision avec vos propres champs. N’utilisez pas ces préfixes !
Les modèles de résultat contiennent des champs de donnée mustache indiqués par des doubles accolades {{
et }}
. Ces champs sont traités et remplacés par Geco lors de la génération des résultats avec les données indiquées : nom de l´étape, nom d’un coureur, temps, code, résultat…
Il y a trois types de champs, suivant les exemples ci-dessous :
{{geco_RunnerName}}
est un champ de donnée basique : le nom du coureur sera affiché à la place dans le fichier généré.{{#geco_RunnersCollection}}...{{/geco_RunnersCollection}}
est une section itérative, qui représente une collection de coureurs : elle va afficher son contenu autant de fois qu’il y a de coureurs.{{#geco_BestTime?}}...{{/geco_BestTime?}}
est une section optionnelle : elle n’apparaît que si la valeur est vraie, ce qui permet de sélectionner certaines données à afficher (par convention, un ?
est ajouté en suffixe).Les sections peuvent être imbriquées sur plusieurs niveaux. Par exemple, on trouve d’abord les résultats par circuit, puis pour chaque circuit les coureurs, puis pour chaque coureur les temps intermédiaires.
Informations générales (premier niveau) :
Au premier niveau, le contexte des résultats contient aussi #geco_ResultsCollection
, c’est-à-dire la liste des résultats classée par groupe (circuits ou catégories). Les données incluses dans le contexte d’un groupe sont décrites ci-dessous.
Pour chaque circuit/catégorie de résultat :
#geco_SingleCourse?
est vraie#geco_SingleCourse?
est vraiePour chaque coureur (classé ou non classé) :
Les même champs ci-dessus sont disponibles, avec en plus pour chaque coureur :
Sont disponibles les informations du concurrent (sauf son rang et la différence au premier), les temps intermédiaires comme ci-dessus (par colonnes), et quelques informations sur la course.
Sont disponibles les informations du concurrent et quelques informations sur la course. Les temps intermédiaires sont décrits dans une seule liste avec les champs ci-dessous.
time
, miss
, add
)