Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Customisation des informations affichées sur les cards en vue liste #987

Open
babastienne opened this issue Oct 13, 2023 · 10 comments
Open
Labels
enhancement New feature or request question Further information is requested

Comments

@babastienne
Copy link
Member

Contexte

En vue liste dans GTR3, les informations affichées pour les itinéraires sont toujours les mêmes :

  • Pratique (via le picto en haut à gauche de l'image)
  • Titre
  • Thèmes
  • Commune
  • Difficulté
  • Temps
  • Distance
  • Dénivelé positif

Pour les derniers éléments, affichés en une ligne, les informations ne sont pas toujours pertinentes.

  • Pas ou très peu de dénivelé, pas pertinent d'afficher cette information
    image
  • Souhait d'afficher le type de parcours pour éviter d'avoir à le préciser dans le titre
    image
  • Parfois besoin selon les pratiques (vtt de descente, enduro, etc.) de mettre en avant plutôt le dénivelé négatif
  • etc.

Pour rappel, sur Geotrek-Widget, le choix a été effectué d'ajouter en plus le type de parcours sur la tuile, et d'identifier plus clairement la pratique plutôt que via un picto à survoler sur l'image.

image

Proposition

Il faudrait pouvoir paramétrer le contenu des ces cards, pour permettre d'afficher d'autres types de contenus car selon les territoires les besoins ne sont pas toujours les mêmes.

A minima, si on ne paramètre pas les contenus car trop compliqué, je pense qu'il faut discuter de la pertinence de mettre en avant le type de parcours et le dénivelé négatif.

Toutefois dans beaucoup de situations, le dénivelé négatif = dénivelé positif, donc pas forcément idéal non plus.

@babastienne babastienne added enhancement New feature or request question Further information is requested labels Oct 13, 2023
@camillemonchicourt
Copy link
Member

En effet, lors du maquettage de GTR3, nous avions identifié et validé avec les utilisateurs les infos essentiels et génériques à afficher dès la liste de résultats, et toutes les autres uniquement dans la fiche détail.
Pour que le liste de résultats soit lisible facilement et pas trop chargée en information.

On pourrait imaginer en effet que l'on puisse remplacer ou ajouter des éléments avec de la configuration.
Par contre, cela me semble compliqué d'afficher certaines infos en fonction du dénivelé de la rando, en fonction de la pratique de la rando (dénivelé négatif seulement pour l'enduro par exemple).

Pour ma part, je ne suis pas convaincu par le fait d'ajouter d'office et pour tous le type de parcours, car nous avions retenu que cela était une info secondaire.

@dtrucs
Copy link
Collaborator

dtrucs commented Oct 16, 2023

Par contre, cela me semble compliqué d'afficher certaines infos en fonction du dénivelé de la rando, en fonction de la pratique de la rando (dénivelé négatif seulement pour l'enduro par exemple).

Serait-ce risqué d'imaginer une logique métier selon la différence de dénivelé ?

Par exemple en mettant une valeur de bascule à 20m :

  • Si c'est <= 20 mètres de d+ et d-, on considère que c'est "plat" et donc aucune pertinence de l'afficher
  • Si on a moins de 20m d-, on affiche seulement le d+
  • Et vice versa avec moins de 20m d+, on affiche seulement le d-

Cette valeur de bascule pourrait être paramétrable

@camillemonchicourt
Copy link
Member

Moi je préfère un affichage dans la liste simple et cohérent pour tous les objets, mais pourquoi pas permettre un affichage des infos de la fiche plus souple et configurable, voire adaptable en fonction de l'objet.

@camillemonchicourt
Copy link
Member

On pourrait imaginer un fonctionnement de ce type :

  • Si D- est supérieure à D+ (en valeur absolue), avec 50m de marge pour éviter les petits écarts où sur une boucle (D+ = D-) où l'arrivée est positionné à un mètre plus bas que le départ cela s'applique, alors on n'affiche seulement D- plutôt que D+ sur les cards de résultats.
  • Ajouter type de parcours
  • En profiter pour permettre de masquer ou afficher les différentes infos
  • En complément, pouvoir afficher des pictos des étiquettes car on veut parfois faire remonter l'info dès la liste de résultat (exemple pour les randos en cœur de parc, où les randos où les chiens sont interdits...)

@babastienne
Copy link
Member Author

babastienne commented Nov 8, 2023

Pour permettre de personnaliser les affichages des résultats dans la vue liste, il faudrait mettre en place un mécanisme qui permette à l'utilisateur de sélectionner certains champs à afficher et leur ordre (un peu comme la configuration des fiches détails mais pour les tuiles de résultats).
On aimerait pouvoir laisser le choix d'afficher les champs suivants :

  • Thèmes
  • Difficulté
  • Dénivelé positif
  • Dénivelé négatif
  • Parcours
  • Durée
  • Distance
  • Commune de départ
  • Réseau (il peut y en avoir plusieurs)

Certaines données restent obligatoires :

  • Nom
  • Type de pratique

@babastienne
Copy link
Member Author

En plus, il faudrait pouvoir afficher certaines étiquettes (comment gérer côté GTA ? Côté GTR ?). Plus complexe, à prendre indépendamment.

@dtrucs
Copy link
Collaborator

dtrucs commented Nov 9, 2023

Plus techniquement il faudrait donc créer un fichier /config/resultCard.json (ou autre nom à définir)
Et il recevrait les valeurs suivantes :

{
  "themes": {
    "display": true,
    "order": 0,
  },
  "difficulty": {
    "display": true,
    "order": 10,
  },
  "duration": {
    "display": true,
    "order": 20,
  },
  "distance": {
    "display": true,
    "order": 30,
  },
  "elevation": {
    "display": true,
    "order": 40,
  },
  "negativeElevation": {
    "display": false,
    "order": 50,
  },
  "courseType": {
    "display": true,
    "order": 60,
  },
  "networks": {
    "display": true,
    "order": 70,
  },
  "place": {
    "display": true
  }
}

Dont il serait possible de surcharger via /customization/config/resultCard.json

@camillemonchicourt
Copy link
Member

Oui c'est ça.
Peut-être plutôt nommer elevation en positiveElevation pour être plus clair et cohérent.

place ne me parait pas très clair et explicite. Peut-on le remplacer par municipalities

Et pour les étiquettes, cela pourrait être un fonctionnement similaire, mais avec une option supplémentaire et optionnelle pour pouvoir définir uniquement l'affichage des pictos de certaines étiquettes uniquement :

  "labels": {
    "display": true,
    "order": 80,
    "limit": [1,3]
  },

@dtrucs
Copy link
Collaborator

dtrucs commented Jan 8, 2024

Après reflexions et en reprenant les propositions :

  • changer elevation par positiveElevation
  • changer place par location
  • ajouter labels et includes (optionnel) pour afficher explicitement que certains ID d'étiquettes
  • En dehors de location et labels, réunir tous les autres informations sous une clé informations: leur présence et leur position dans le tableau conditionnent leurs affichages et ordres.

Par conséquent avec la fonctionnalité des includes, j'ajoute en amont une clé trek afin de pouvoir laisser la possibilité d'ajouter des personnalisation des cards des autres types de contenus (par ex includes pour les labels des sites outdoor)

{
 "trek": {
    "location": {
      "display": true,
    },
    "themes": {
      "display": true
    },
    "labels": {
      "display": true,
      "includes": [1,3]
    }
   "informations": ["difficulty", "duration", "distance", "positiveElevation", "negativeElevation", "courseType", "networks"]
  }
}

Valeur par défaut de resultCard.json (rétrocompatibilité)

{
 "trek": {
    "location": {
      "display": true,
    },
    "themes": {
      "display": true
    },
    "labels": {
      "display": true,
    }
   "informations": ["difficulty", "duration", "distance", "positiveElevation"]
  }
}

@camillemonchicourt
Copy link
Member

OK ça me semble très bien.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants