diff --git a/app/Events/EventParticipationCancelled.php b/app/Events/EventParticipationCancelled.php index b975fac..23f04f0 100644 --- a/app/Events/EventParticipationCancelled.php +++ b/app/Events/EventParticipationCancelled.php @@ -5,9 +5,7 @@ namespace App\Events; use App\Models\Event; use Illuminate\Broadcasting\Channel; use Illuminate\Broadcasting\InteractsWithSockets; -use Illuminate\Broadcasting\PresenceChannel; use Illuminate\Broadcasting\PrivateChannel; -use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; diff --git a/app/Events/TaskParticipationCancelled.php b/app/Events/TaskParticipationCancelled.php index 51a3d91..df6ee78 100644 --- a/app/Events/TaskParticipationCancelled.php +++ b/app/Events/TaskParticipationCancelled.php @@ -4,11 +4,8 @@ namespace App\Events; use App\Models\Event; use App\Models\Task; -use Illuminate\Broadcasting\Channel; use Illuminate\Broadcasting\InteractsWithSockets; -use Illuminate\Broadcasting\PresenceChannel; use Illuminate\Broadcasting\PrivateChannel; -use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; diff --git a/app/Events/VolunteerAssignedToTask.php b/app/Events/VolunteerAssignedToTask.php index 139ead3..120f17c 100644 --- a/app/Events/VolunteerAssignedToTask.php +++ b/app/Events/VolunteerAssignedToTask.php @@ -4,11 +4,8 @@ namespace App\Events; use App\Models\Event; use App\Models\Task; -use Illuminate\Broadcasting\Channel; use Illuminate\Broadcasting\InteractsWithSockets; -use Illuminate\Broadcasting\PresenceChannel; use Illuminate\Broadcasting\PrivateChannel; -use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; diff --git a/app/Events/VolunteerUnassignedFromTask.php b/app/Events/VolunteerUnassignedFromTask.php index 56cbfb7..70c1207 100644 --- a/app/Events/VolunteerUnassignedFromTask.php +++ b/app/Events/VolunteerUnassignedFromTask.php @@ -4,11 +4,8 @@ namespace App\Events; use App\Models\Event; use App\Models\Task; -use Illuminate\Broadcasting\Channel; use Illuminate\Broadcasting\InteractsWithSockets; -use Illuminate\Broadcasting\PresenceChannel; use Illuminate\Broadcasting\PrivateChannel; -use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; diff --git a/app/Http/Controllers/EventsController.php b/app/Http/Controllers/EventsController.php index 80adc0f..d369ccd 100644 --- a/app/Http/Controllers/EventsController.php +++ b/app/Http/Controllers/EventsController.php @@ -5,11 +5,14 @@ namespace App\Http\Controllers; use App\Events\EventParticipationCancelled; use App\Models\Event; use App\Models\Notification; +use App\Mail\EventParticipationCancelledMail; use App\Models\Task; use Illuminate\Http\Request; use Illuminate\Http\JsonResponse; use Illuminate\Support\Facades\Gate; use Illuminate\Support\Facades\Log; +use Illuminate\Support\Facades\Mail; +use Carbon\Carbon; class EventsController extends Controller @@ -96,22 +99,32 @@ class EventsController extends Controller return $task->users; })->unique('id'); - $notification = Notification::create([ - 'content' => "L'événement '{$event->name}' a été supprimé. Vous n'y participez donc plus." - ]); - $notification->users()->attach($participants->pluck('id')); - foreach ($participants as $user) { - broadcast(new EventParticipationCancelled( - $user->id, - $event - )); + if (Carbon::now()->lessThanOrEqualTo($event->end)) { + $notification = Notification::create([ + 'content' => "L'événement '{$event->name}' a été supprimé. Vous n'y participez donc plus." + ]); + $notification->users()->attach($participants->pluck('id')); + + foreach ($participants as $user) { + broadcast(new EventParticipationCancelled( + $user->id, + $event + )); + + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + 'eventName' => $event->name, + 'start' => $event->start, + 'end' => $event->end, + ]; + Mail::to($user->email)->send(new EventParticipationCancelledMail($data)); + } } $event->delete(); - return response()->json(["message" => "Event deleted and participants notified"]); - } catch (\Exception $e) { Log::error("Event delete error: " . $e->getMessage()); return response()->json(['message' => "Server error"], 500); diff --git a/app/Http/Controllers/TasksController.php b/app/Http/Controllers/TasksController.php index 1ea1fd4..7b0a604 100644 --- a/app/Http/Controllers/TasksController.php +++ b/app/Http/Controllers/TasksController.php @@ -7,12 +7,17 @@ use App\Events\VolunteerAssignedToTask; use App\Events\VolunteerUnassignedFromTask; use App\Models\Event; use App\Models\Notification; +use App\Mail\VolunteerAssignToTaskMail; +use App\Mail\VolunteerUnassignToTaskMail; use App\Models\Task; use App\Models\User; +use Carbon\Carbon; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Gate; use Illuminate\Support\Facades\Log; +use Illuminate\Support\Facades\Mail; +use App\Mail\TaskParticipationCancelledMail; class TasksController extends Controller { @@ -74,8 +79,8 @@ class TasksController extends Controller } try { - - $task = Task::with('event')->find($request["task_id"]); + $task = Task::find($request["task_id"]); + $event = \App\Models\Event::find($task->events_id); if ($task->users()->where('user_id', $id)->exists()) { return response()->json(["message" => "User already assigned to this task"], 400); @@ -87,17 +92,28 @@ class TasksController extends Controller $user = User::find($id); - if($user) { + if($user && Carbon::now()->lessThanOrEqualTo($task->end)) { $task->users()->attach($id); + $notification = Notification::create([ 'content' => "Vous avez été assigné à la tâche {$task->title} de l'événement {$task->event->name}." ]); $notification->users()->attach($user->id); + broadcast(new VolunteerAssignedToTask( $user->id, $task, - $task->event + $event )); + + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + 'taskName' => $task->name, + 'start' => $task->start, + 'end' => $task->end, + ]; + Mail::to($user->email)->send(new VolunteerAssignToTaskMail($data)); } return response()->json(['message' => "Task assigned"], 200); @@ -129,26 +145,39 @@ class TasksController extends Controller } try { - $task = Task::with(['users', 'event'])->find($id); + $task = Task::with(['users'])->find($id); + $event = \App\Models\Event::find($task->events_id); if (!$task) { return response()->json(["message" => "Task not found"], 404); } $participants = $task->users; - if ($participants->isNotEmpty()) { - $notification = Notification::create([ - 'content' => "La tâche '{$task->title}' pour l'événement '{$task->event->name}' a été supprimée. Vous n'y participez donc plus." - ]); - $notification->users()->attach($participants->pluck('id')); - } - foreach ($participants as $user) { - broadcast(new TaskParticipationCancelled( - $user->id, - $task, - $task->event - )); + if (Carbon::now()->lessThanOrEqualTo($task->end)) { + if ($participants->isNotEmpty()) { + $notification = Notification::create([ + 'content' => "La tâche '{$task->title}' pour l'événement '{$task->event->name}' a été supprimée. Vous n'y participez donc plus." + ]); + $notification->users()->attach($participants->pluck('id')); + } + + foreach ($participants as $user) { + broadcast(new TaskParticipationCancelled( + $user->id, + $task, + $event + )); + + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + 'taskName' => $task->name, + 'start' => $event->start, + 'end' => $task->end, + ]; + Mail::to($user->email)->send(new TaskParticipationCancelledMail($data)); + } } $task->delete(); @@ -186,10 +215,6 @@ class TasksController extends Controller } } - - - - public function unassignSelf(Request $request): JsonResponse { try { $task = Task::find($request["task_id"]); @@ -209,8 +234,6 @@ class TasksController extends Controller } } - - public function unassignUser(Request $request, int $id): JsonResponse { if(Gate::denies('unassignOther', Task::class)) { @@ -218,17 +241,13 @@ class TasksController extends Controller } try { - $task = Task::with('event')->find($request["task_id"]); + $task = Task::find($request["task_id"]); + $event = \App\Models\Event::find($task->events_id); if (!$task) { return response()->json(["message" => "Task not found"], 404); } - if (!$task->event) { - Log::error("Relation 'event' manquante pour la tâche ID: " . $task->id); - return response()->json(["message" => "Task is missing its parent event"], 422); - } - $isAssigned = $task->users()->where('user_id', $id)->exists(); if (!$isAssigned) { return response()->json(["message" => "User is not assigned to this task"], 400); @@ -236,7 +255,7 @@ class TasksController extends Controller $user = User::find($id); - if ($user) { + if ($user && Carbon::now()->lessThanOrEqualTo($task->end)) { $task->users()->detach($id); $notification = Notification::create([ 'content' => "Vous avez été désassigné de la tâche {$task->title} de l'événement {$task->event->name}." @@ -245,8 +264,17 @@ class TasksController extends Controller broadcast(new VolunteerUnassignedFromTask( $user->id, $task, - $task->event + $event )); + + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + 'taskName' => $task->name, + 'start' => $task->start, + 'end' => $task->end, + ]; + Mail::to($user->email)->send(new VolunteerUnassignToTaskMail($data)); } return response()->json(['message' => "User unassigned successfully"], 200); diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 8bb5cd5..d93a542 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -3,6 +3,11 @@ namespace App\Http\Controllers; use App\Events\UserCreated; +use App\Mail\CreateUserByAdminMail; +use App\Mail\DeactivateAccountMail; +use App\Mail\DeleteAccountMail; +use App\Mail\RegisterMail; +use App\Mail\UpdateRoleMail; use App\Mail\ValidateMail; use App\Models\Notification; use App\Models\User; @@ -54,9 +59,18 @@ class UserController extends Controller $notification->users()->attach( $admins->pluck('id')->toArray() ); - broadcast(new UserCreated($user)); + foreach ($admins as $admin) { + $data = [ + 'adminName' => $admin->name, + 'adminLastname' => $admin->lastname, + 'userName' => $user->name, + 'userLastname' => $user->lastname, + ]; + Mail::to($admin->email)->send(new RegisterMail($data)); + } + return response()->json(['message' => 'User created successfully']); } @@ -85,6 +99,13 @@ class UserController extends Controller "phone" => $phone->formatInternational(), ]); + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + ]; + Mail::to($user->email)->send(new CreateUserByAdminMail($data)); + + return response()->json([ 'message' => 'User created successfully', "password" => $password, @@ -94,6 +115,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) { @@ -124,6 +152,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) { @@ -142,6 +176,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); @@ -181,12 +221,12 @@ class UserController extends Controller try { $user = User::find($id); + $user->validate = 1; $user->role = 3; $user->verified_at = now(); $user->save(); - $data = [ 'name' => $user->name, 'lastname' => $user->lastname, @@ -213,11 +253,20 @@ class UserController extends Controller $user->save(); $role = \App\Services\GetRole::getRole($request['role']); + $notification = Notification::create([ 'content' => "Votre rôle à changé pour {$role} !", ]); $notification->users()->attach($user->id); + $data = [ + 'name' => $user->name, + 'lastname' => $user->lastname, + 'role' => $role, + ]; + Mail::to($user->email)->send(new UpdateRoleMail($data)); + + return response()->json(['message' => 'User role added successfully']); } catch(\Exception $e) { Log::info($e->getMessage()); diff --git a/app/Mail/CreateUserByAdminMail.php b/app/Mail/CreateUserByAdminMail.php new file mode 100644 index 0000000..1a9d6ff --- /dev/null +++ b/app/Mail/CreateUserByAdminMail.php @@ -0,0 +1,58 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Compte créé - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.createUserByAdmin', + 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/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/app/Mail/TestMail.php b/app/Mail/DeleteAccountMail.php similarity index 82% rename from app/Mail/TestMail.php rename to app/Mail/DeleteAccountMail.php index 036d55f..2b5571d 100644 --- a/app/Mail/TestMail.php +++ b/app/Mail/DeleteAccountMail.php @@ -9,7 +9,7 @@ use Illuminate\Mail\Mailables\Content; use Illuminate\Mail\Mailables\Envelope; use Illuminate\Queue\SerializesModels; -class TestMail extends Mailable +class DeleteAccountMail extends Mailable { use Queueable, SerializesModels; public $data; @@ -28,7 +28,7 @@ class TestMail extends Mailable public function envelope(): Envelope { return new Envelope( - subject: 'Test Mail', + subject: 'Compte supprimé - Comité des fêtes de Beaupont', ); } @@ -38,9 +38,10 @@ class TestMail extends Mailable public function content(): Content { return new Content( - view: 'mails.test', + view: 'mails.deleteAccount', with: [ 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], ] ); } diff --git a/app/Mail/EventParticipationCancelledMail.php b/app/Mail/EventParticipationCancelledMail.php new file mode 100644 index 0000000..bcb8e7a --- /dev/null +++ b/app/Mail/EventParticipationCancelledMail.php @@ -0,0 +1,62 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Evénement supprimé - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.eventParticipationCancelled', + with: [ + 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], + 'eventName' => $this->data['eventName'], + 'start' => FormatDate::formatDate($this->data['start']), + 'end' => FormatDate::formatDate($this->data['end']), + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Mail/RegisterMail.php b/app/Mail/RegisterMail.php new file mode 100644 index 0000000..d572676 --- /dev/null +++ b/app/Mail/RegisterMail.php @@ -0,0 +1,60 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Nouvelle demande de validation - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.register', + with: [ + 'adminName' => $this->data['adminName'], + 'adminLastname' => $this->data['adminLastname'], + 'userName' => $this->data['userName'], + 'userLastname' => $this->data['userLastname'], + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Mail/TaskParticipationCancelledMail.php b/app/Mail/TaskParticipationCancelledMail.php new file mode 100644 index 0000000..7eeacaf --- /dev/null +++ b/app/Mail/TaskParticipationCancelledMail.php @@ -0,0 +1,62 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Tâche supprimée - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.taskParticipationCancelled', + with: [ + 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], + 'taskName' => $this->data['taskName'], + 'end' => FormatDate::formatDate($this->data['end']), + 'start' => FormatDate::formatDate($this->data['start']), + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Mail/UpdateRoleMail.php b/app/Mail/UpdateRoleMail.php new file mode 100644 index 0000000..64eb863 --- /dev/null +++ b/app/Mail/UpdateRoleMail.php @@ -0,0 +1,59 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Rôle mis à jour - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.updateRole', + with: [ + 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], + 'role' => $this->data['role'], + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Mail/VolunteerAssignToTaskMail.php b/app/Mail/VolunteerAssignToTaskMail.php new file mode 100644 index 0000000..99c722b --- /dev/null +++ b/app/Mail/VolunteerAssignToTaskMail.php @@ -0,0 +1,62 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Assignation - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.volunteerAssignToTask', + with: [ + 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], + 'taskName' => $this->data['taskName'], + 'start' => FormatDate::formatDate($this->data['start']), + 'end' => FormatDate::formatDate($this->data['end']), + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Mail/VolunteerUnassignToTaskMail.php b/app/Mail/VolunteerUnassignToTaskMail.php new file mode 100644 index 0000000..506d0c3 --- /dev/null +++ b/app/Mail/VolunteerUnassignToTaskMail.php @@ -0,0 +1,62 @@ +data = $data; + } + + /** + * Get the message envelope. + */ + public function envelope(): Envelope + { + return new Envelope( + subject: 'Désassignation - Comité des fêtes de Beaupont', + ); + } + + /** + * Get the message content definition. + */ + public function content(): Content + { + return new Content( + view: 'mails.volunteerUnassignToTask', + with: [ + 'name' => $this->data['name'], + 'lastname' => $this->data['lastname'], + 'taskName' => $this->data['taskName'], + 'start' => FormatDate::formatDate($this->data['start']), + 'end' => FormatDate::formatDate($this->data['end']), + ] + ); + } + + /** + * Get the attachments for the message. + * + * @return array + */ + public function attachments(): array + { + return []; + } +} diff --git a/app/Services/FormatDate.php b/app/Services/FormatDate.php new file mode 100644 index 0000000..aece902 --- /dev/null +++ b/app/Services/FormatDate.php @@ -0,0 +1,13 @@ +format('d/m/Y, H:i'); + } + +} diff --git a/app/Services/GetRole.php b/app/Services/GetRole.php index d1ae26e..d752d7d 100644 --- a/app/Services/GetRole.php +++ b/app/Services/GetRole.php @@ -6,6 +6,7 @@ class GetRole { public static function getRole($role) { + $role = (int)$role; return match ($role) { 1 => "Président", 2 => "Gérant", diff --git a/config/cors.php b/config/cors.php index 19f2551..8287cbf 100644 --- a/config/cors.php +++ b/config/cors.php @@ -20,9 +20,13 @@ return [ 'allowed_methods' => ['*'], +<<<<<<< HEAD 'allowed_origins' => env('DEV', 0) == 1 ? explode(',', env('DEV_CORS_ALLOWED_ORIGINS')) : explode(',', env('PROD_CORS_ALLOWED_ORIGINS')), +======= + 'allowed_origins' => ['*'], +>>>>>>> dev 'allowed_origins_patterns' => [], diff --git a/resources/views/mails/createUserByAdmin.blade.php b/resources/views/mails/createUserByAdmin.blade.php new file mode 100644 index 0000000..82b23f8 --- /dev/null +++ b/resources/views/mails/createUserByAdmin.blade.php @@ -0,0 +1,48 @@ + + + + + + Compte créé + + +
+

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

+ +

+ Un compte a été créé pour vous par un administrateur sur le site de gestion des bénévoles + du Comité des fêtes de Beaupont. +

+ +

+ Vous pouvez dès à présent vous connecter et accéder à votre espace personnel afin de participer + aux activités proposées. +

+ +

+ Veuillez vous renseigner auprès d'un administrateur pour récupérer vos identifiants. +

+ +

+ + Se connecter + +

+ +

+ Si vous n’êtes pas à l’origine de cette création de compte ou si vous avez des questions, + merci de contacter rapidement l’équipe organisatrice. +

+ +

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

+
+ +

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

+ + diff --git a/resources/views/mails/deactivateAccount.blade.php b/resources/views/mails/deactivateAccount.blade.php new file mode 100644 index 0000000..b1010f5 --- /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. +

+ + diff --git a/resources/views/mails/deleteAccount.blade.php b/resources/views/mails/deleteAccount.blade.php new file mode 100644 index 0000000..f9c616e --- /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. +

+ + diff --git a/resources/views/mails/eventParticipationCancelled.blade.php b/resources/views/mails/eventParticipationCancelled.blade.php new file mode 100644 index 0000000..9d2a4c2 --- /dev/null +++ b/resources/views/mails/eventParticipationCancelled.blade.php @@ -0,0 +1,32 @@ + + + + + + Événement supprimé + + +
+

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

+ +

+ L’événement {{ $eventName }} a été supprimé par un administrateur. + Vous n’y participez donc plus. Cet événement avait lieu du {{ $start }} au {{ $end }}. +

+ +

+ Si vous pensez qu’il s’agit d’une erreur ou si vous souhaitez plus d’informations, + merci de contacter l’équipe du Comité des fêtes de Beaupont. +

+ +

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

+
+ +

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

+ + diff --git a/resources/views/mails/register.blade.php b/resources/views/mails/register.blade.php new file mode 100644 index 0000000..1f6626c --- /dev/null +++ b/resources/views/mails/register.blade.php @@ -0,0 +1,38 @@ + + + + + + Nouvelle demande de validation + + +
+

Bonjour {{ $adminName }} {{ $adminLastname }},

+ +

+ L’utilisateur {{ $userName }} {{ $userLastname }} a créé un compte + qui est maintenant en attente de validation sur le site du Comité des fêtes de Beaupont. +

+ +

+ + Valider ce compte + +

+ +

+ Vous pouvez cliquer sur le bouton ci-dessus pour vous rendre sur la page permettant de valider le compte. +

+ +

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

+
+ +

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

+ + diff --git a/resources/views/mails/taskParticipationCancelled.blade.php b/resources/views/mails/taskParticipationCancelled.blade.php new file mode 100644 index 0000000..861520c --- /dev/null +++ b/resources/views/mails/taskParticipationCancelled.blade.php @@ -0,0 +1,32 @@ + + + + + + Tâche supprimée + + +
+

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

+ +

+ La tâche {{ $taskName }} a été supprimé par un administrateur. + Vous n’y participez donc plus. Cette tâche avait lieu du {{ $start }} au {{ $end }}. +

+ +

+ Si vous pensez qu’il s’agit d’une erreur ou si vous souhaitez plus d’informations, + merci de contacter l’équipe du Comité des fêtes de Beaupont. +

+ +

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

+
+ +

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

+ + diff --git a/resources/views/mails/test.blade.php b/resources/views/mails/test.blade.php deleted file mode 100644 index 62d0eb1..0000000 --- a/resources/views/mails/test.blade.php +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - Test Email - - -

Hello {{ $name }}

-

This is a test email sent from your application using MailHog!

- - diff --git a/resources/views/mails/updateRole.blade.php b/resources/views/mails/updateRole.blade.php new file mode 100644 index 0000000..4b5d00a --- /dev/null +++ b/resources/views/mails/updateRole.blade.php @@ -0,0 +1,35 @@ + + + + + + Rôle mis à jour + + +
+

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

+ +

+ Votre rôle sur le site de gestion des bénévoles du Comité des fêtes de Beaupont + a été mis à jour par un administrateur. +

+ +

+ Vous êtes désormais : {{ $role }} +

+ +

+ Si vous avez des questions concernant ce changement, n’hésitez pas à contacter l’équipe organisatrice. +

+ +

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

+
+ +

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

+ + diff --git a/resources/views/mails/validate.blade.php b/resources/views/mails/validate.blade.php index e9690f5..9c07457 100644 --- a/resources/views/mails/validate.blade.php +++ b/resources/views/mails/validate.blade.php @@ -1,12 +1,47 @@ - - - - - Test Email - - -

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

-

Votre compte sur le site de gestion des bénévoles de l'assiocation des comitées des fêtes de Beaupont à été validé.

- + + + + + Compte validé + + + + +
+

🎉 Compte validé !

+
+ +
+

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

+ +

+ Nous avons le plaisir de vous informer que votre compte sur le site de gestion des bénévoles du Comité des fêtes de Beaupont a été validé avec succès. +

+ +

+ Vous pouvez dès à présent accéder à votre espace personnel et participer aux différentes activités proposées. +

+ + + +

+ Si vous avez la moindre question ou besoin d’assistance, n’hésitez pas à nous contacter. +

+ +

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

+
+ +

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

+ diff --git a/resources/views/mails/volunteerAssignToTask.blade.php b/resources/views/mails/volunteerAssignToTask.blade.php new file mode 100644 index 0000000..55c4057 --- /dev/null +++ b/resources/views/mails/volunteerAssignToTask.blade.php @@ -0,0 +1,32 @@ + + + + + + Assignation + + +
+

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

+ +

+ Vous avez été assigné à la tâche {{ $taskName }} par un administrateur. + Cette tâche aura lieu du {{ $start }} au {{ $end }}. +

+ +

+ Si vous pensez qu’il s’agit d’une erreur ou si vous souhaitez plus d’informations, + merci de contacter l’équipe du Comité des fêtes de Beaupont. +

+ +

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

+
+ +

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

+ + diff --git a/resources/views/mails/volunteerUnassignToTask.blade.php b/resources/views/mails/volunteerUnassignToTask.blade.php new file mode 100644 index 0000000..052c68e --- /dev/null +++ b/resources/views/mails/volunteerUnassignToTask.blade.php @@ -0,0 +1,32 @@ + + + + + + Désassignation + + +
+

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

+ +

+ Vous avez été désassigné de la tâche {{ $taskName }} par un administrateur. + Vous n'y participez donc plus. Cette tâche avait lieu du {{ $start }} au {{ $end }}. +

+ +

+ Si vous pensez qu’il s’agit d’une erreur ou si vous souhaitez plus d’informations, + merci de contacter l’équipe du Comité des fêtes de Beaupont. +

+ +

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

+
+ +

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

+ +