From c3fb0ec094fd38471b92907c1b8eb494f1d8f6ac Mon Sep 17 00:00:00 2001 From: Giovanni-Josserand Date: Wed, 18 Mar 2026 09:48:20 +0100 Subject: [PATCH] create a mail when an account is deactivated by an administrator --- app/Http/Controllers/UserController.php | 7 +++ app/Mail/DeactivateAccountMail.php | 58 +++++++++++++++++++ .../views/mails/deactivateAccount.blade.php | 40 +++++++++++++ 3 files changed, 105 insertions(+) create mode 100644 app/Mail/DeactivateAccountMail.php create mode 100644 resources/views/mails/deactivateAccount.blade.php diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 7a6bb32..df31d4f 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\DeactivateAccountMail; use App\Mail\DeleteAccountMail; use App\Mail\TestMail; use App\Mail\ValidateMail; @@ -165,6 +166,12 @@ class UserController extends Controller try { $userToDeactivate->update(['validate' => 0]); + $data = [ + 'name' => $userToDeactivate->name, + 'lastname' => $userToDeactivate->lastname, + ]; + Mail::to($userToDeactivate->email)->send(new DeactivateAccountMail($data)); + return response()->json(['message' => 'User deactivated successfully']); } catch (ModelNotFoundException $e) { return response()->json(['message' => 'Utilisateur non trouvé'], 404); diff --git a/app/Mail/DeactivateAccountMail.php b/app/Mail/DeactivateAccountMail.php new file mode 100644 index 0000000..1ce8ff9 --- /dev/null +++ b/app/Mail/DeactivateAccountMail.php @@ -0,0 +1,58 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Compte désactivé - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.deactivateAccount', + 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/deactivateAccount.blade.php b/resources/views/mails/deactivateAccount.blade.php new file mode 100644 index 0000000..03fd4e3 --- /dev/null +++ b/resources/views/mails/deactivateAccount.blade.php @@ -0,0 +1,40 @@ + + + + + + Compte désactivé + + +
+

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é désactivé par un administrateur. +

+ +

+ Vous ne pouvez désormais plus accéder à votre espace personnel ni participer aux activités proposées. +

+ +

+ ⚠️ Si vous pensez qu’il s’agit d’une erreur ou si vous souhaitez obtenir plus d’informations, + nous vous invitons à contacter l’équipe organisatrice. +

+ +

+ Votre compte pourra être réactivé ultérieurement si nécessaire. +

+ +

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

+
+ +

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

+ +