From d9852587013ea37d9df9918bb389623bcf11c77e Mon Sep 17 00:00:00 2001
From: Serreau Jovann
Date: Thu, 25 Dec 2025 14:48:39 +0100
Subject: [PATCH] =?UTF-8?q?```=20=E2=9C=A8=20feat(Admin/Dashboard):=20Affi?=
=?UTF-8?q?che=20le=20nombre=20de=20candidatures=20en=20cours.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
🐛 fix(JoinController): Corrige l'envoi de mail et ajoute un état Discord.
✨ feat(JoinController): Ajoute l'état Discord et corrige les templates de mail.
```
---
src/Controller/Admin/AdminController.php | 4 +++-
src/Controller/JoinController.php | 8 ++++----
templates/admin/dashboard.twig | 18 ++++++++++++++++++
templates/join.twig | 2 +-
4 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/src/Controller/Admin/AdminController.php b/src/Controller/Admin/AdminController.php
index d201b40..c102f82 100644
--- a/src/Controller/Admin/AdminController.php
+++ b/src/Controller/Admin/AdminController.php
@@ -27,6 +27,7 @@ use App\Form\RequestPasswordRequestType;
use App\Repository\Ag\MainRepository;
use App\Repository\EventRepository;
use App\Repository\InviteEPageRepository;
+use App\Repository\JoinRepository;
use App\Repository\MembersCotisationsRepository;
use App\Repository\MembersRepository;
use App\Repository\ProductsRepository;
@@ -66,10 +67,11 @@ class AdminController extends AbstractController
{
#[Route(path: '/admin', name: 'admin_dashboard', options: ['sitemap' => false], methods: ['GET'])]
- public function adminDashboard(MembersRepository $membersRepository): Response
+ public function adminDashboard(MembersRepository $membersRepository,JoinRepository $joinRepository): Response
{
return $this->render('admin/dashboard.twig', [
'memberCount' => $membersRepository->count(),
+ 'joins' => $joinRepository->count(['state'=>'create'])+$joinRepository->count(['state'=>'waiting']),
]);
}
#[Route(path: '/admin/products', name: 'admin_products', options: ['sitemap' => false], methods: ['GET'])]
diff --git a/src/Controller/JoinController.php b/src/Controller/JoinController.php
index d9e32ea..d60b9ad 100644
--- a/src/Controller/JoinController.php
+++ b/src/Controller/JoinController.php
@@ -47,7 +47,7 @@ class JoinController extends AbstractController
if($form->isSubmitted() && $form->isValid()){
$j->setState("create");
$j->setCreateAt(new \DateTimeImmutable("now"));
-
+ $j->setIsDiscord(false);
$cPdf = new Candidat();
$cPdf->setData($j,$entityManager,$kernel);
$cPdf->AddPage();
@@ -64,7 +64,7 @@ class JoinController extends AbstractController
$mailer->send('contact@e-cosplay.fr',
'E-Cosplay',
'[E-Cosplay] - Nouvelle candidature',
- 'candidat/new.twig',
+ 'mails/candidat/new.twig',
['joint'=>$j],
[new DataPart($content,'candidat.pdf','application/pdf')]
);
@@ -73,11 +73,11 @@ class JoinController extends AbstractController
$mailer->send($j->getEmail(),
$j->getSurname()." ".$j->getName(),
"[E-Cosplay] - Confirmation de votre candidature",
- 'candidat/confirm.twig',
+ 'mails/candidat/confirm.twig',
['joint'=>$j],
[new DataPart($content,'candidat.pdf','application/pdf')]
);
- return $this->redirectToRoute('app_recruit_comfirmed');
+ return $this->redirectToRoute('app_recruit_confirmed');
}
return $this->render('join.twig',[
'form' => $form->createView(),
diff --git a/templates/admin/dashboard.twig b/templates/admin/dashboard.twig
index b66d487..2625878 100644
--- a/templates/admin/dashboard.twig
+++ b/templates/admin/dashboard.twig
@@ -31,6 +31,24 @@
+
+
+
+
+ Membres de l'association
+
+
+
+
+
+ Total des candidatures en cours
+
+
+
{# Carte 2: Commandes en Attente #}
diff --git a/templates/join.twig b/templates/join.twig
index b108318..7b833d8 100644
--- a/templates/join.twig
+++ b/templates/join.twig
@@ -139,7 +139,7 @@
{{ 'form.header.title'|trans }}
- {{ form_start(form, {'attr': {'class': 'space-y-8','data-turbo':false}}) }}
+ {{ form_start(form, {'attr': {'class': 'space-y-8'}}) }}
{# IDENTITÉ #}