2020-07-16 20:21:28 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Notifications;
|
|
|
|
|
|
|
|
use Illuminate\Bus\Queueable;
|
2020-10-21 00:29:50 +00:00
|
|
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
2020-07-16 20:21:28 +00:00
|
|
|
use Illuminate\Notifications\Messages\MailMessage;
|
|
|
|
use Illuminate\Notifications\Notification;
|
|
|
|
use Illuminate\Support\Collection;
|
|
|
|
|
|
|
|
class NewContact extends Notification
|
|
|
|
{
|
|
|
|
use Queueable;
|
|
|
|
|
|
|
|
public $message;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Create a new notification instance.
|
|
|
|
*
|
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function __construct(Collection $message)
|
|
|
|
{
|
|
|
|
$this->message = $message;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the notification's delivery channels.
|
|
|
|
*
|
|
|
|
* @param mixed $notifiable
|
|
|
|
* @return array
|
|
|
|
*/
|
|
|
|
public function via($notifiable)
|
|
|
|
{
|
|
|
|
return ['mail'];
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the mail representation of the notification.
|
|
|
|
*
|
|
|
|
* @param mixed $notifiable
|
|
|
|
* @return \Illuminate\Notifications\Messages\MailMessage
|
|
|
|
*/
|
|
|
|
public function toMail($notifiable)
|
|
|
|
{
|
|
|
|
if ($this->message->has([
|
2020-10-21 00:29:50 +00:00
|
|
|
'message',
|
|
|
|
'ip',
|
|
|
|
'email'
|
|
|
|
]))
|
|
|
|
{
|
|
|
|
return (new MailMessage)
|
2020-07-16 20:21:28 +00:00
|
|
|
->line('We\'ve received a new contact form submission in the StaffManagement app center.')
|
|
|
|
->line('This is what they sent: ')
|
|
|
|
->line('')
|
|
|
|
->line($this->message->get('message'))
|
|
|
|
->line('')
|
2020-10-21 00:29:50 +00:00
|
|
|
->line('This message was received from ' . $this->message->get('ip') . ' and submitted by ' . $this->message->get('email') . '.')
|
2020-07-16 20:21:28 +00:00
|
|
|
->action('Sign in', url(route('login')))
|
|
|
|
->line('Thank you!');
|
|
|
|
}
|
|
|
|
|
2020-10-21 00:29:50 +00:00
|
|
|
throw new \InvalidArgumentException("Invalid arguments supplied to NewContact!");
|
2020-07-16 20:21:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the array representation of the notification.
|
|
|
|
*
|
|
|
|
* @param mixed $notifiable
|
|
|
|
* @return array
|
|
|
|
*/
|
|
|
|
public function toArray($notifiable)
|
|
|
|
{
|
|
|
|
return [
|
|
|
|
//
|
|
|
|
];
|
|
|
|
}
|
|
|
|
}
|