{% extends admin.getTemplate('base_list_field') %} {% import '@kohinos/admin/sonata_entity_badge_theme.html.twig' as entity_badge %} {% block field %} {% apply spaceless %} {# Déterminer l'objet à afficher en fonction du contexte #} {% set entityToDisplay = null %} {% if field_description.label|lower == 'expediteur' %} {% if object is not null %} {% set entityToDisplay = object.expediteur %} {% endif %} {% elseif field_description.label|lower == 'destinataire' %} {% if object is not null %} {% set entityToDisplay = object.destinataire %} {% endif %} {% elseif field_description.label|lower matches '/^Compte (groupe|comptoir|adherent|prestataire)/i' %} {% if object.account is defined and object.account.accountableObject is defined %} {% set entityToDisplay = object.account.accountableObject %} {% endif %} {% endif %} {# Afficher le badge approprié selon le type d'entité #} {% if entityToDisplay is not null %} {% if entityToDisplay is instanceof("App\\Entity\\Adherent") %} {{ entity_badge.render_adherent(entityToDisplay) }} {% elseif entityToDisplay is instanceof("App\\Entity\\Prestataire") %} {{ entity_badge.render_prestataire(entityToDisplay) }} {% elseif entityToDisplay is instanceof("App\\Entity\\Comptoir") %} {{ entity_badge.render_comptoir(entityToDisplay) }} {% elseif entityToDisplay is instanceof("App\\Entity\\Groupe") %} {{ entity_badge.render_groupe(entityToDisplay) }} {% elseif entityToDisplay is instanceof("App\\Entity\\Siege") %} {{ entity_badge.render_siege(entityToDisplay) }} {% else %} {# Fallback si type non reconnu #} {{ value }} {% endif %} {% else %} {# Pas d'entité à afficher, afficher la valeur brute #} {{ value }} {% endif %} {% endapply %} {% endblock %}