web_notifications) { $channels[] = 'database'; $channels[] = 'broadcast'; } if ($notifiable->email_notifications) { $channels[] = 'mail'; } return $channels; } public function toDatabase($notifiable): array { return [ 'message' => "La date de la tâche {$this->task->name} de l'événement {$this->event->name} a été mise à jour. Cette tâche aura maintenant lieu du {$this->newStart} au {$this->newEnd}.", 'task_id' => $this->task->id, 'event_id' => $this->event->id, 'old_start' => $this->oldStart, 'old_end' => $this->oldEnd, 'new_start' => $this->newStart, 'new_end' => $this->newEnd, ]; } public function toBroadcast($notifiable): BroadcastMessage { return new BroadcastMessage($this->toDatabase($notifiable)); } public function toMail($notifiable): void { Mail::to($notifiable->email)->send(new TaskDateUpdateMail([ 'name' => $notifiable->name, 'lastname' => $notifiable->lastname, 'taskName' => $this->task->name, 'oldStart' => $this->oldStart, 'oldEnd' => $this->oldEnd, 'newStart' => $this->newStart, 'newEnd' => $this->newEnd, 'eventName' => $this->event->name, ])); } }