Refactoring & updating of jobs and mailers.
This commit is contained in:
parent
3d67a8b4a3
commit
140cc130a8
|
|
@ -1,34 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Commands;
|
||||
|
||||
use App\Mailers\AttendeeMailer;
|
||||
use Illuminate\Contracts\Bus\SelfHandling;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Log;
|
||||
|
||||
class MessageAttendeesCommand extends Command implements ShouldQueue, SelfHandling
|
||||
{
|
||||
use InteractsWithQueue,
|
||||
SerializesModels;
|
||||
|
||||
public $attendeeMessage;
|
||||
|
||||
public function __construct(\App\Models\Message $attendeeMessage)
|
||||
{
|
||||
$this->attendeeMessage = $attendeeMessage;
|
||||
}
|
||||
|
||||
public function handle(AttendeeMailer $mailer)
|
||||
{
|
||||
Log::info(date('d m y H:i')." - Starting Job {$this->job->getJobId()} ".__CLASS__);
|
||||
|
||||
$mailer->sendMessageToAttendees($this->attendeeMessage);
|
||||
|
||||
Log::info(date('d m y H:i')." - Finished Job {$this->job->getJobId()} ".__CLASS__);
|
||||
|
||||
$this->delete();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
<?php
|
||||
|
||||
namespace App\Events;
|
||||
|
||||
use App\Events\Event;
|
||||
use App\Models\Order;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
|
||||
|
||||
class OrderCompletedEvent extends Event
|
||||
{
|
||||
use SerializesModels;
|
||||
|
||||
public $order;
|
||||
|
||||
/**
|
||||
* OrderCompletedEvent constructor.
|
||||
* @param Order $order
|
||||
*/
|
||||
public function __construct(Order $order)
|
||||
{
|
||||
$this->order = $order;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the channels the event should be broadcast on.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function broadcastOn()
|
||||
{
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
|
@ -2,9 +2,10 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Mailers\TicketMailer;
|
||||
use App\Jobs\SendAttendeeInvite;
|
||||
use App\Jobs\SendAttendeeTicket;
|
||||
use App\Jobs\SendMessageToAttendees;
|
||||
use App\Jobs\GenerateTicket;
|
||||
use App\Commands\MessageAttendeesCommand;
|
||||
use App\Models\Attendee;
|
||||
use App\Models\Event;
|
||||
use App\Models\EventStats;
|
||||
|
|
@ -191,10 +192,9 @@ class EventAttendeesController extends MyBaseController
|
|||
$attendee->reference_index = 1;
|
||||
$attendee->save();
|
||||
|
||||
$this->dispatch(new GenerateTicket($order->order_reference."-".$attendee->reference_index));
|
||||
|
||||
if ($email_attendee == '1') {
|
||||
TicketMailer::sendAttendeeInvite($attendee);
|
||||
$this->dispatch(new SendAttendeeInvite($attendee));
|
||||
}
|
||||
|
||||
session()->flash('message', 'Attendee Successfully Invited');
|
||||
|
|
@ -346,9 +346,8 @@ class EventAttendeesController extends MyBaseController
|
|||
$attendee->reference_index = 1;
|
||||
$attendee->save();
|
||||
|
||||
$this->dispatch(new GenerateTicket($attendee->getReferenceAttribute()));
|
||||
if ($email_attendee == '1') {
|
||||
TicketMailer::sendAttendeeInvite($attendee);
|
||||
$this->dispatch(new SendAttendeeInvite($attendee));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
@ -431,6 +430,7 @@ class EventAttendeesController extends MyBaseController
|
|||
'email_logo' => $attendee->event->organiser->full_logo_path,
|
||||
];
|
||||
|
||||
//@todo move this to the SendAttendeeMessage Job
|
||||
Mail::send('Emails.messageAttendees', $data, function ($message) use ($attendee, $data) {
|
||||
$message->to($attendee->email, $attendee->full_name)
|
||||
->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
|
||||
|
|
@ -497,13 +497,14 @@ class EventAttendeesController extends MyBaseController
|
|||
$message = Message::createNew();
|
||||
$message->message = $request->get('message');
|
||||
$message->subject = $request->get('subject');
|
||||
if ($request->get('recipients') != "all") {
|
||||
$message->recipients = $request->get('recipients');
|
||||
}
|
||||
$message->recipients = ($request->get('recipients') == 'all') ? 'all' : $request->get('recipients');
|
||||
$message->event_id = $event_id;
|
||||
$message->save();
|
||||
|
||||
$this->dispatch(new MessageAttendeesCommand($message));
|
||||
/*
|
||||
* Queue the emails
|
||||
*/
|
||||
$this->dispatch(new SendMessageToAttendees($message));
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
|
|
@ -755,8 +756,7 @@ class EventAttendeesController extends MyBaseController
|
|||
{
|
||||
$attendee = Attendee::scope()->findOrFail($attendee_id);
|
||||
|
||||
$this->dispatch(new GenerateTicket($attendee->getReferenceAttribute()));
|
||||
TicketMailer::sendAttendeeTicket($attendee);
|
||||
$this->dispatch(new SendAttendeeTicket($attendee));
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
|
|
|
|||
|
|
@ -2,8 +2,7 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Jobs\GenerateTicket;
|
||||
use App\Mailers\TicketMailer;
|
||||
use App\Events\OrderCompletedEvent;
|
||||
use App\Models\Affiliate;
|
||||
use App\Models\Attendee;
|
||||
use App\Models\Event;
|
||||
|
|
@ -351,7 +350,8 @@ class EventCheckoutController extends Controller
|
|||
|
||||
if ($response->isSuccessful()) {
|
||||
|
||||
session()->push('ticket_order_' . $event_id . '.transaction_id', $response->getTransactionReference());
|
||||
session()->push('ticket_order_' . $event_id . '.transaction_id',
|
||||
$response->getTransactionReference());
|
||||
|
||||
return $this->completeOrder($event_id);
|
||||
|
||||
|
|
@ -605,9 +605,8 @@ class EventCheckoutController extends Controller
|
|||
/*
|
||||
* Queue up some tasks - Emails to be sent, PDFs etc.
|
||||
*/
|
||||
$this->dispatch(new GenerateTicket($order->order_reference));
|
||||
TicketMailer::sendOrderTickets($order);
|
||||
|
||||
Log::info('Firiing the event');
|
||||
event(new OrderCompletedEvent($order));
|
||||
|
||||
|
||||
} catch (Exception $e) {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,38 @@
|
|||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Jobs\Job;
|
||||
use App\Mailers\AttendeeMailer;
|
||||
use App\Mailers\TicketMailer;
|
||||
use App\Models\Attendee;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class SendAttendeeInvite extends Job implements ShouldQueue
|
||||
{
|
||||
use InteractsWithQueue, SerializesModels;
|
||||
|
||||
public $attendee;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Attendee $attendee)
|
||||
{
|
||||
$this->attendee = $attendee;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle(AttendeeMailer $attendeeMailer)
|
||||
{
|
||||
$attendeeMailer->sendAttendeeInvite($this->attendee);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Jobs\Job;
|
||||
use App\Mailers\AttendeeMailer;
|
||||
use App\Mailers\TicketMailer;
|
||||
use App\Models\Attendee;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class SendAttendeeTicket extends Job implements ShouldQueue
|
||||
{
|
||||
use InteractsWithQueue, SerializesModels;
|
||||
|
||||
public $attendee;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Attendee $attendee)
|
||||
{
|
||||
$this->attendee = $attendee;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle(AttendeeMailer $attendeeMailer)
|
||||
{
|
||||
$attendeeMailer->sendAttendeeTicket($this->attendee);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Jobs\Job;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class SendMessageToAttendee extends Job implements ShouldQueue
|
||||
{
|
||||
use InteractsWithQueue, SerializesModels;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Jobs\Job;
|
||||
use App\Mailers\AttendeeMailer;
|
||||
use App\Models\Message;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Log;
|
||||
|
||||
class SendMessageToAttendees extends Job implements ShouldQueue
|
||||
{
|
||||
use InteractsWithQueue, SerializesModels;
|
||||
|
||||
public $attendeeMessage;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Message $attendeeMessage)
|
||||
{
|
||||
$this->attendeeMessage = $attendeeMessage;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle(AttendeeMailer $attendeeMailer)
|
||||
{
|
||||
$attendeeMailer->sendMessageToAttendees($this->attendeeMessage);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Jobs\Job;
|
||||
use App\Mailers\OrderMailer;
|
||||
use App\Models\Order;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class SendOrderNotification extends Job implements ShouldQueue
|
||||
{
|
||||
use InteractsWithQueue, SerializesModels;
|
||||
|
||||
public $order;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Order $order)
|
||||
{
|
||||
$this->order = $order;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle(OrderMailer $orderMailer)
|
||||
{
|
||||
$orderMailer->sendOrderNotification($this->order);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Jobs\Job;
|
||||
use App\Mailers\OrderMailer;
|
||||
use App\Models\Order;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class SendOrderTickets extends Job implements ShouldQueue
|
||||
{
|
||||
use InteractsWithQueue, SerializesModels;
|
||||
|
||||
public $order;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Order $order)
|
||||
{
|
||||
$this->order = $order;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle(OrderMailer $orderMailer)
|
||||
{
|
||||
$orderMailer->sendOrderTickets($this->order);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
namespace App\Listeners;
|
||||
|
||||
use App\Events\OrderCompletedEvent;
|
||||
use App\Jobs\GenerateTicket;
|
||||
use App\Jobs\SendOrderNotification;
|
||||
use App\Jobs\SendOrderTickets;
|
||||
use Illuminate\Foundation\Bus\DispatchesJobs;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
|
||||
class OrderCompletedListener implements ShouldQueue
|
||||
{
|
||||
|
||||
use DispatchesJobs;
|
||||
|
||||
/**
|
||||
* Create the event listener.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle the event.
|
||||
*
|
||||
* @param OrderCompletedEvent $event
|
||||
* @return void
|
||||
*/
|
||||
public function handle(OrderCompletedEvent $event)
|
||||
{
|
||||
/**
|
||||
* Generate the PDF tickets and send notification emails etc.
|
||||
*/
|
||||
Log::info('Processing Order: ' . $event->order->order_reference);
|
||||
$this->dispatchNow(new GenerateTicket($event->order->order_reference));
|
||||
$this->dispatch(new SendOrderTickets($event->order));
|
||||
$this->dispatch(new SendOrderNotification($event->order));
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -7,23 +7,30 @@ use App\Models\Message;
|
|||
use App\Models\Order;
|
||||
use Carbon\Carbon;
|
||||
use Mail;
|
||||
use Log;
|
||||
|
||||
class AttendeeMailer extends Mailer
|
||||
{
|
||||
/**
|
||||
* Send the attendee the ticket
|
||||
*
|
||||
* @param Attendee $attendee
|
||||
* @param Order $order
|
||||
* @param $ticket_path
|
||||
*/
|
||||
public function sendAttendeeTicket(Attendee $attendee, Order $order, $ticket_path)
|
||||
|
||||
public function sendAttendeeTicket($attendee)
|
||||
{
|
||||
$this->sendTo($attendee->email, config('attendize.outgoing_email'), $order->event->organiser->name, 'Your ticket for the event '.$order->event->title, 'Emails.AttendeeTicketResend', [
|
||||
'order' => $order,
|
||||
'email_logo' => $order->event->organiser->full_logo_path,
|
||||
'attendee' => $attendee
|
||||
], $ticket_path);
|
||||
|
||||
Log::info("Sending ticket to: " . $attendee->email);
|
||||
|
||||
$data = [
|
||||
'attendee' => $attendee,
|
||||
];
|
||||
|
||||
Mail::send('Mailers.TicketMailer.SendAttendeeTicket', $data, function ($message) use ($attendee) {
|
||||
$message->to($attendee->email);
|
||||
$message->subject('Your ticket for the event ' . $attendee->order->event->title);
|
||||
|
||||
$file_name = $attendee->getReferenceAttribute();
|
||||
$file_path = public_path(config('attendize.event_pdf_tickets_path')) . '/' . $file_name . '.pdf';
|
||||
|
||||
$message->attach($file_path);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -36,10 +43,11 @@ class AttendeeMailer extends Mailer
|
|||
$event = $message_object->event;
|
||||
|
||||
$attendees = ($message_object->recipients == 'all')
|
||||
? $event->attendees // all attendees
|
||||
: Attendee::where('ticket_id', '=', $message_object->recipients)->where('account_id', '=', $message_object->account_id)->get();
|
||||
? $event->attendees // all attendees
|
||||
: Attendee::where('ticket_id', '=', $message_object->recipients)->where('account_id', '=',
|
||||
$message_object->account_id)->get();
|
||||
|
||||
foreach($attendees as $attendee) {
|
||||
foreach ($attendees as $attendee) {
|
||||
|
||||
$data = [
|
||||
'attendee' => $attendee,
|
||||
|
|
@ -61,4 +69,27 @@ class AttendeeMailer extends Mailer
|
|||
$message_object->sent_at = Carbon::now();
|
||||
$message_object->save();
|
||||
}
|
||||
|
||||
public function SendAttendeeInvite($attendee)
|
||||
{
|
||||
|
||||
Log::info("Sending invite to: " . $attendee->email);
|
||||
|
||||
$data = [
|
||||
'attendee' => $attendee,
|
||||
];
|
||||
|
||||
Mail::queue('Mailers.TicketMailer.SendAttendeeInvite', $data, function ($message) use ($attendee) {
|
||||
$message->to($attendee->email);
|
||||
$message->subject('Your ticket for the event ' . $attendee->order->event->title);
|
||||
|
||||
$file_name = $attendee->getReferenceAttribute();
|
||||
$file_path = public_path(config('attendize.event_pdf_tickets_path')) . '/' . $file_name . '.pdf';
|
||||
|
||||
$message->attach($file_path);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,34 +3,42 @@
|
|||
namespace App\Mailers;
|
||||
|
||||
use App\Models\Order;
|
||||
use Log;
|
||||
use Mail;
|
||||
|
||||
class OrderMailer extends Mailer
|
||||
class OrderMailer
|
||||
{
|
||||
public function sendOrderNotification(Order $order)
|
||||
{
|
||||
$this->sendTo($order->account->email, config('attendize.outgoing_email'), config('attendize.outgoing_email_name'), 'New order received on the event '.$order->event->title.' ['.$order->order_reference.']', 'Emails.OrderNotification', [
|
||||
$data = [
|
||||
'order' => $order
|
||||
];
|
||||
|
||||
Mail::send('Emails.OrderNotification', $data, function($message) use ($order) {
|
||||
$message->to($order->account->email);
|
||||
$message->subject('New order received on the event '.$order->event->title.' ['.$order->order_reference.']');
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public function sendOrderTickets($order) {
|
||||
|
||||
Log::info("Sending ticket to: ".$order->email);
|
||||
|
||||
$data = [
|
||||
'order' => $order,
|
||||
]);
|
||||
];
|
||||
|
||||
Mail::send('Mailers.TicketMailer.SendOrderTickets', $data, function($message) use ($order) {
|
||||
$message->to($order->email);
|
||||
$message->subject('Your tickets for the event '.$order->event->title);
|
||||
|
||||
$file_name = $order->order_reference;
|
||||
$file_path = public_path(config('attendize.event_pdf_tickets_path')).'/'.$file_name.'.pdf';
|
||||
|
||||
$message->attach($file_path);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public function sendOrderConfirmation(Order $order)
|
||||
{
|
||||
$ticket_pdf = public_path($order->ticket_pdf_path);
|
||||
|
||||
if (!file_exists($ticket_pdf)) {
|
||||
$ticket_pdf = false;
|
||||
}
|
||||
|
||||
$this->sendTo($order->email, config('attendize.outgoing_email'), $order->event->organiser->name, 'Your tickets & order confirmation for the event '.$order->event->title.' ['.$order->order_reference.']', 'Emails.OrderConfirmation', [
|
||||
'order' => $order,
|
||||
'email_logo' => $order->event->organiser->full_logo_path,
|
||||
], $ticket_pdf);
|
||||
}
|
||||
|
||||
public function sendTickets(Order $order)
|
||||
{
|
||||
// $this->sendTo($order->account->email, config('attendize.outgoing_email'), config('attendize.outgoing_email_name'), 'New order received on the event '. $order->event->title .' ['. $order->order_reference .']', 'Emails.OrderNotification', [
|
||||
// 'order' => $order
|
||||
// ]);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,71 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace App\Mailers;
|
||||
|
||||
use Mail;
|
||||
use Log;
|
||||
|
||||
class TicketMailer
|
||||
{
|
||||
|
||||
public static function sendOrderTickets($order) {
|
||||
|
||||
Log::info("Sending ticket to: ".$order->email);
|
||||
|
||||
$data = [
|
||||
'order' => $order,
|
||||
];
|
||||
|
||||
Mail::queue('Mailers.TicketMailer.SendOrderTickets', $data, function($message) use ($order) {
|
||||
$message->to($order->email);
|
||||
$message->subject('Your tickets for the event '.$order->event->title);
|
||||
|
||||
$file_name = $order->order_reference;
|
||||
$file_path = public_path(config('attendize.event_pdf_tickets_path')).'/'.$file_name.'.pdf';
|
||||
|
||||
$message->attach($file_path);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public static function sendAttendeeTicket($attendee) {
|
||||
|
||||
Log::info("Sending ticket to: ".$attendee->email);
|
||||
|
||||
$data = [
|
||||
'attendee' => $attendee,
|
||||
];
|
||||
|
||||
Mail::queue('Mailers.TicketMailer.SendAttendeeTicket', $data, function($message) use ($attendee) {
|
||||
$message->to($attendee->email);
|
||||
$message->subject('Your ticket for the event '.$attendee->order->event->title);
|
||||
|
||||
$file_name = $attendee->getReferenceAttribute();
|
||||
$file_path = public_path(config('attendize.event_pdf_tickets_path')).'/'.$file_name.'.pdf';
|
||||
|
||||
$message->attach($file_path);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public static function sendAttendeeInvite($attendee) {
|
||||
|
||||
Log::info("Sending invite to: ".$attendee->email);
|
||||
|
||||
$data = [
|
||||
'attendee' => $attendee,
|
||||
];
|
||||
|
||||
Mail::queue('Mailers.TicketMailer.SendAttendeeInvite', $data, function($message) use ($attendee) {
|
||||
$message->to($attendee->email);
|
||||
$message->subject('Your ticket for the event '.$attendee->order->event->title);
|
||||
|
||||
$file_name = $attendee->getReferenceAttribute();
|
||||
$file_path = public_path(config('attendize.event_pdf_tickets_path')).'/'.$file_name.'.pdf';
|
||||
|
||||
$message->attach($file_path);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -13,8 +13,8 @@ class EventServiceProvider extends ServiceProvider
|
|||
* @var array
|
||||
*/
|
||||
protected $listen = [
|
||||
'event.name' => [
|
||||
'EventListener',
|
||||
'App\Events\OrderCompletedEvent' => [
|
||||
'App\Listeners\OrderCompletedListener',
|
||||
],
|
||||
];
|
||||
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ return [
|
|||
'Crypt' => Illuminate\Support\Facades\Crypt::class,
|
||||
'DB' => Illuminate\Support\Facades\DB::class,
|
||||
'Eloquent' => Illuminate\Database\Eloquent\Model::class,
|
||||
'LaravelEvent' => Illuminate\Support\Facades\Event::class, // Changed Event to LaravelEvent
|
||||
'LaravelEvent' => Illuminate\Support\Facades\Event::class,
|
||||
'File' => Illuminate\Support\Facades\File::class,
|
||||
'Hash' => Illuminate\Support\Facades\Hash::class,
|
||||
'Input' => Illuminate\Support\Facades\Input::class,
|
||||
|
|
|
|||
Loading…
Reference in New Issue