File "OrderInProductionNotification.php"
Full Path: /home/clickysoft/public_html/jmapi5.clickysoft.net/app/Notifications/OrderInProductionNotification.php
File size: 1.93 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace App\Notifications;
use App\Channels\Messages\SMS;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Notifications\Messages\MailMessage;
use Illuminate\Notifications\Notification;
class OrderInProductionNotification extends Notification implements ShouldQueue
{
use Queueable;
public $data;
/**
* Create a new notification instance.
*
* @return void
*/
public function __construct($data)
{
$this->data = $data;
}
/**
* Get the notification's delivery channels.
*
* @param mixed $notifiable
* @return array
*/
public function via($notifiable)
{
return ['mail', 'sms'];
}
/**
* Get the mail representation of the notification.
*
* @param mixed $notifiable
* @return \Illuminate\Notifications\Messages\MailMessage
*/
public function toMail($notifiable)
{
$mailMessage = (new MailMessage)
->view('admin.mails.order_in_production', ['data' => $this->data])
->replyTo('orders@jmtrophies.com')
->subject("Your Order #{$this->data["order_number"]} is in Production - Exciting Progress Update!");
if (!empty($notifiable->secondary_email)) {
$mailMessage->cc($notifiable->secondary_email);
}
return $mailMessage;
}
public function toSms($notifiable)
{
if(!empty($notifiable->phone_number) && $notifiable->sms_notification == 1) {
return (new SMS)
->content("Hi it's J&M Trophies, Woo Hoo! Your order #{$this->data["order_number"]} has started its production! We will notify you as soon as it is complete!");
}
}
/**
* Get the array representation of the notification.
*
* @param mixed $notifiable
* @return array
*/
public function toArray($notifiable)
{
return [
//
];
}
}