{% extends 'admin/layout.html.twig' %} {% macro sort_link(label,field,filters,query) %}{% set nextDirection=filters.sort==field and filters.direction=='asc'?'desc':'asc' %}{{ label }}{% if filters.sort==field %}tri {{ filters.direction=='asc'?'croissant':'décroissant' }}{% endif %}{% endmacro %} {% import _self as page %} {% block title %}Bilans de représentation — Walk The Line{% endblock %} {% block admin_body %} {% set actions=[] %}{% if can_permission('CONCERT_FEEDBACK',2) %}{% set actions=actions|merge([{label:'Nouveau bilan',href:path('admin_concert_feedback_new'),icon:'bi-clipboard2-plus',primary:true}]) %}{% endif %}{% if total>0 %}{% set actions=actions|merge([{label:'Exporter Excel',href:path('admin_concert_feedback_export',app.request.query.all),icon:'bi-file-earmark-excel'}]) %}{% endif %} {% include 'admin/ui/_page_header.html.twig' with {page_eyebrow:'Analyse après concert',page_title:'Bilans de représentation',page_subtitle:'Un bilan complet par représentation, limité au projet actif.',page_actions:actions} only %}
| {{ page.sort_link('Date','eventDate',filters,app.request.query.all) }} | {{ page.sort_link('Lieu','venue',filters,app.request.query.all) }} | {{ page.sort_link('Saisie','createdAt',filters,app.request.query.all) }} | {{ page.sort_link('Spectateurs','audience',filters,app.request.query.all) }} | {{ page.sort_link('Global','overall',filters,app.request.query.all) }} | {{ page.sort_link('Artistique','artistic',filters,app.request.query.all) }} | {{ page.sort_link('Accueil','welcome',filters,app.request.query.all) }} | Reprogrammation | |
|---|---|---|---|---|---|---|---|---|
| {{ item.representationDateSnapshot|date('d/m/Y') }} | {{ item.venueNameSnapshot }} {{ item.venueCitySnapshot }} | {{ item.createdAt|date('d/m/Y H:i') }} {{ item.createdBy ? item.createdBy.displayName : 'Compte supprimé' }} | {{ item.approximateAudience is same as(null) ? '—' : item.approximateAudience }} | {{ item.overallRating is same as(null) ? '—' : item.overallRating~'/10' }} | {{ item.artisticRating is same as(null) ? '—' : item.artisticRating~'/10' }} | {{ item.welcomeRating is same as(null) ? '—' : item.welcomeRating~'/10' }} | {{ choices.label('rebookingPotential',item.rebookingPotential) ?: '—' }} | Consulter |