Files
e-ticket/templates/security/email_verified.html.twig
Serreau Jovann 100ff96c70 Add SIRET/RNA verification, organizer management, registration flow pages
SIRET/RNA verification:
- Create SiretService with API gouv lookup + JOAFE RNA lookup + cache pool (24h)
- Verification page: declared info vs API data side by side
- Display NAF code + label (from naf.json), nature juridique code + label
- Association/Entreprise/EI badges, ESS badge, RNA, coordonnees lat/long
- JOAFE section: objet, regime, domaine, dates, lieu, PDF download link
- Tranche effectif with readable labels
- Refresh cache button
- Page restricted to non-approved organizers only

Organizer approval flow:
- Approval form with offer (free/basic/custom) and commission rate (default 3%)
- Add commissionRate field to User entity + migration
- Rejection form with required reason textarea, sent in email
- Edit page for approved organizers: all fields modifiable
- Modify button in approved organizers table

Registration flow pages:
- Post-registration success page with email verification message
- Organizer gets additional 48h staff review notice
- Post-email-verification page: confirmed for buyers, 48h notice for organizers

Dashboard:
- Simplified Meilisearch sync to single button

Tests: SiretServiceTest (9), AdminControllerTest (31), RegistrationControllerTest updated, UserTest updated

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 20:25:04 +01:00

27 lines
1.5 KiB
Twig

{% extends 'base.html.twig' %}
{% block title %}Email verifie - E-Ticket{% endblock %}
{% block body %}
<div style="max-width:36rem;margin:0 auto;padding:3rem 1rem;text-align:center;">
<div style="border:4px solid #111827;box-shadow:6px 6px 0 rgba(0,0,0,1);background:white;padding:2.5rem;">
<div style="font-size:3rem;margin-bottom:1rem;">&#10003;</div>
<h1 class="text-2xl font-black uppercase tracking-tighter italic" style="margin-bottom:1rem;">Email verifie !</h1>
<div style="border:4px solid #111827;background:#d1fae5;padding:1rem 1.5rem;margin-bottom:1.5rem;">
<p class="font-bold text-sm">Votre adresse email a ete verifiee avec succes.</p>
</div>
{% if isOrganizer %}
<div style="border:4px solid #111827;background:#fabf04;padding:1rem 1.5rem;margin-bottom:1.5rem;">
<p class="font-bold text-sm">L'equipe E-Ticket va maintenant examiner votre demande de compte organisateur. Vous recevrez une reponse sous 48h.</p>
</div>
{% else %}
<p class="font-bold text-gray-500 text-sm" style="margin-bottom:1.5rem;">Votre compte est actif. Vous pouvez maintenant vous connecter.</p>
{% endif %}
<a href="{{ path('app_login') }}" style="display:inline-block;padding:0.75rem 2rem;border:3px solid #111827;box-shadow:4px 4px 0 rgba(0,0,0,1);background:#fabf04;" class="font-black uppercase text-sm tracking-widest hover:bg-indigo-600 hover:text-black transition-all">Se connecter</a>
</div>
</div>
{% endblock %}