Skip to content

Display the terrain module image on events without a custom image #185

Description

@mitch10593

Sur un événement qui a une carte (terrain) définie mais aucune image personnalisée, la vue de l'événement n'affiche pas l'image d'en-tête du terrain : un bandeau gris avec le nom de la carte est affiché à la place.

Par exemple, sur cet événement de la map Normandie : https://www.veaf.org/calendar/1321

Contexte

  • Vue concernée : frontend/src/views/EventDetailView.vue. Le bloc d'en-tête utilise imageUrl, calculé uniquement depuis event.image_uuid, et retombe sur un <div> gris affichant event.map_name quand il n'y a pas d'image personnalisée.
  • Le module « terrain » lié à l'événement (CalendarEvent.mapModule, backend/app/models/calendar.py) possède bien une image d'en-tête (Module.image_header / image_header_uuid), déjà exposée par app/api/modules.py et app/api/roster.py, et déjà utilisée par RosterModuleDetail.vue et ModuleCard.vue.
  • Mais EventDetailOut (backend/app/schemas/calendar.py) n'expose que map_id et map_name : l'UUID de l'image du terrain n'est jamais transmis au frontend (sérialisation dans app/api/calendar.py).

À préciser

  • Fallback souhaité : image d'en-tête du terrain (image_header_uuid, format bandeau) ou image standard du module (image_uuid) ?
  • Le fallback doit-il aussi s'appliquer à la liste du calendrier (CalendarView.vue), ou uniquement à la vue détail de l'événement ?

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions