From d9ce927d88c634779f9ca5071b961c144116ab1b Mon Sep 17 00:00:00 2001 From: Giovanni-Josserand Date: Wed, 18 Mar 2026 09:45:55 +0100 Subject: [PATCH] create a mail when an account is deleted by an administrator or by the user --- app/Http/Controllers/UserController.php | 14 +++++ app/Mail/DeleteAccountMail.php | 58 +++++++++++++++++++ resources/views/mails/deleteAccount.blade.php | 39 +++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 app/Mail/DeleteAccountMail.php create mode 100644 resources/views/mails/deleteAccount.blade.php diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 3654c4c..7a6bb32 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use App\Events\UserCreated; use App\Mail\CreateUserByAdminMail; +use App\Mail\DeleteAccountMail; use App\Mail\TestMail; use App\Mail\ValidateMail; use App\Models\Notification; @@ -103,6 +104,13 @@ class UserController extends Controller public function delete(Request $request): JsonResponse { try { $user = User::find($request->user()->id); + + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + ]; + Mail::to($user->email)->send(new DeleteAccountMail($data)); + $user->delete(); return response()->json(['message' => 'User deleted successfully']); } catch(\Exception $e) { @@ -133,6 +141,12 @@ class UserController extends Controller try { $user = User::find($id); + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + ]; + Mail::to($user->email)->send(new DeleteAccountMail($data)); + $user->delete(); return response()->json(['message' => 'User deleted successfully']); } catch(\Exception $e) { diff --git a/app/Mail/DeleteAccountMail.php b/app/Mail/DeleteAccountMail.php new file mode 100644 index 0000000..2b5571d --- /dev/null +++ b/app/Mail/DeleteAccountMail.php @@ -0,0 +1,58 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Compte supprimé - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.deleteAccount', + with: [ + 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/resources/views/mails/deleteAccount.blade.php b/resources/views/mails/deleteAccount.blade.php new file mode 100644 index 0000000..7137326 --- /dev/null +++ b/resources/views/mails/deleteAccount.blade.php @@ -0,0 +1,39 @@ + + + + + + Compte supprimé + + +
+

Bonjour {{ $name }} {{ $lastname }},

+ +

+ Nous vous informons que votre compte sur le site de gestion des bénévoles + du Comité des fêtes de Beaupont a été supprimé. +

+ +

+ Vous n’avez désormais plus accès à votre espace personnel ni aux services associés. +

+ +

+ ⚠️ Si vous n’êtes pas à l’origine de cette action, merci de nous contacter rapidement. +

+ +

+ Si vous souhaitez à nouveau participer aux activités, vous pouvez effectuer une nouvelle inscription à tout moment. +

+ +

+ À bientôt,
+ L’équipe du Comité des fêtes de Beaupont +

+
+ +

+ Cet email a été envoyé automatiquement, merci de ne pas y répondre. +

+ +