Begin implementing transactions
This commit is contained in:
parent
05d038af33
commit
6e3ad53f93
|
|
@ -41,25 +41,25 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
if ($searchQuery) {
|
||||
$attendees = $event->attendees()
|
||||
->withoutCancelled()
|
||||
->join('orders', 'orders.id', '=', 'attendees.order_id')
|
||||
->where(function ($query) use ($searchQuery) {
|
||||
$query->where('orders.order_reference', 'like', $searchQuery.'%')
|
||||
->orWhere('attendees.first_name', 'like', $searchQuery.'%')
|
||||
->orWhere('attendees.email', 'like', $searchQuery.'%')
|
||||
->orWhere('attendees.reference', 'like', $searchQuery.'%')
|
||||
->orWhere('attendees.last_name', 'like', $searchQuery.'%');
|
||||
})
|
||||
->orderBy(($sort_by == 'order_reference' ? 'orders.' : 'attendees.').$sort_by, $sort_order)
|
||||
->select('attendees.*', 'orders.order_reference')
|
||||
->paginate();
|
||||
->withoutCancelled()
|
||||
->join('orders', 'orders.id', '=', 'attendees.order_id')
|
||||
->where(function ($query) use ($searchQuery) {
|
||||
$query->where('orders.order_reference', 'like', $searchQuery . '%')
|
||||
->orWhere('attendees.first_name', 'like', $searchQuery . '%')
|
||||
->orWhere('attendees.email', 'like', $searchQuery . '%')
|
||||
->orWhere('attendees.reference', 'like', $searchQuery . '%')
|
||||
->orWhere('attendees.last_name', 'like', $searchQuery . '%');
|
||||
})
|
||||
->orderBy(($sort_by == 'order_reference' ? 'orders.' : 'attendees.') . $sort_by, $sort_order)
|
||||
->select('attendees.*', 'orders.order_reference')
|
||||
->paginate();
|
||||
} else {
|
||||
$attendees = $event->attendees()
|
||||
->join('orders', 'orders.id', '=', 'attendees.order_id')
|
||||
->withoutCancelled()
|
||||
->orderBy(($sort_by == 'order_reference' ? 'orders.' : 'attendees.').$sort_by, $sort_order)
|
||||
->select('attendees.*', 'orders.order_reference')
|
||||
->paginate();
|
||||
->join('orders', 'orders.id', '=', 'attendees.order_id')
|
||||
->withoutCancelled()
|
||||
->orderBy(($sort_by == 'order_reference' ? 'orders.' : 'attendees.') . $sort_by, $sort_order)
|
||||
->select('attendees.*', 'orders.order_reference')
|
||||
->paginate();
|
||||
}
|
||||
|
||||
$data = [
|
||||
|
|
@ -93,12 +93,12 @@ class EventAttendeesController extends MyBaseController
|
|||
}
|
||||
|
||||
return view('ManageEvent.Modals.CreateAttendee', [
|
||||
'event' => $event,
|
||||
'tickets' => $event->tickets()->lists('title', 'id'),
|
||||
'event' => $event,
|
||||
'tickets' => $event->tickets()->lists('title', 'id'),
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Create an attendee
|
||||
*
|
||||
* @param Request $request
|
||||
|
|
@ -109,7 +109,7 @@ class EventAttendeesController extends MyBaseController
|
|||
{
|
||||
$rules = [
|
||||
'first_name' => 'required',
|
||||
'ticket_id' => 'required|exists:tickets,id,account_id,'.\Auth::user()->account_id,
|
||||
'ticket_id' => 'required|exists:tickets,id,account_id,' . \Auth::user()->account_id,
|
||||
'ticket_price' => 'numeric|required',
|
||||
'email' => 'email|required',
|
||||
];
|
||||
|
|
@ -123,86 +123,103 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
if ($validator->fails()) {
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
]);
|
||||
}
|
||||
|
||||
$ticket_id = $request->get('ticket_id');
|
||||
$ticket_price = $request->get('ticket_price');
|
||||
$attendee_first_name =$request->get('first_name');
|
||||
$attendee_first_name = $request->get('first_name');
|
||||
$attendee_last_name = $request->get('last_name');
|
||||
$attendee_email = $request->get('email');
|
||||
$email_attendee = $request->get('email_ticket');
|
||||
|
||||
DB::beginTransaction();
|
||||
|
||||
/*
|
||||
* Create the order
|
||||
*/
|
||||
$order = new Order();
|
||||
$order->first_name = $attendee_first_name;
|
||||
$order->last_name = $attendee_last_name;
|
||||
$order->email = $attendee_email;
|
||||
$order->order_status_id = config('attendize.order_complete');
|
||||
$order->amount = $ticket_price;
|
||||
$order->account_id = Auth::user()->account_id;
|
||||
$order->event_id = $event_id;
|
||||
$order->save();
|
||||
try {
|
||||
|
||||
/*
|
||||
* Update qty sold
|
||||
*/
|
||||
$ticket = Ticket::scope()->find($ticket_id);
|
||||
$ticket->increment('quantity_sold');
|
||||
$ticket->increment('sales_volume', $ticket_price);
|
||||
$ticket->event->increment('sales_volume', $ticket_price);
|
||||
/*
|
||||
* Create the order
|
||||
*/
|
||||
$order = new Order();
|
||||
$order->first_name = $attendee_first_name;
|
||||
$order->last_name = $attendee_last_name;
|
||||
$order->email = $attendee_email;
|
||||
$order->order_status_id = config('attendize.order_complete');
|
||||
$order->amount = $ticket_price;
|
||||
$order->account_id = Auth::user()->account_id;
|
||||
$order->event_id = $event_id;
|
||||
$order->save();
|
||||
|
||||
/*
|
||||
* Insert order item
|
||||
*/
|
||||
$orderItem = new OrderItem();
|
||||
$orderItem->title = $ticket->title;
|
||||
$orderItem->quantity = 1;
|
||||
$orderItem->order_id = $order->id;
|
||||
$orderItem->unit_price = $ticket_price;
|
||||
$orderItem->save();
|
||||
/*
|
||||
* Update qty sold
|
||||
*/
|
||||
$ticket = Ticket::scope()->find($ticket_id);
|
||||
$ticket->increment('quantity_sold');
|
||||
$ticket->increment('sales_volume', $ticket_price);
|
||||
$ticket->event->increment('sales_volume', $ticket_price);
|
||||
|
||||
/*
|
||||
* Update the event stats
|
||||
*/
|
||||
$event_stats = new EventStats();
|
||||
$event_stats->updateTicketsSoldCount($event_id, 1);
|
||||
$event_stats->updateTicketRevenue($ticket_id, $ticket_price);
|
||||
/*
|
||||
* Insert order item
|
||||
*/
|
||||
$orderItem = new OrderItem();
|
||||
$orderItem->title = $ticket->title;
|
||||
$orderItem->quantity = 1;
|
||||
$orderItem->order_id = $order->id;
|
||||
$orderItem->unit_price = $ticket_price;
|
||||
$orderItem->save();
|
||||
|
||||
/*
|
||||
* Create the attendee
|
||||
*/
|
||||
$attendee = new Attendee();
|
||||
$attendee->first_name = $attendee_first_name;
|
||||
$attendee->last_name = $attendee_last_name;
|
||||
$attendee->email = $attendee_email;
|
||||
$attendee->event_id = $event_id;
|
||||
$attendee->order_id = $order->id;
|
||||
$attendee->ticket_id = $ticket_id;
|
||||
$attendee->account_id = Auth::user()->account_id;
|
||||
$attendee->reference = $order->order_reference.'-1';
|
||||
$attendee->save();
|
||||
/*
|
||||
* Update the event stats
|
||||
*/
|
||||
$event_stats = new EventStats();
|
||||
$event_stats->updateTicketsSoldCount($event_id, 1);
|
||||
$event_stats->updateTicketRevenue($ticket_id, $ticket_price);
|
||||
|
||||
if ($email_attendee == '1') {
|
||||
$this->dispatch(new OrderTicketsCommand($order, false));
|
||||
/*
|
||||
* Create the attendee
|
||||
*/
|
||||
$attendee = new Attendee();
|
||||
$attendee->first_name = $attendee_first_name;
|
||||
$attendee->last_name = $attendee_last_name;
|
||||
$attendee->email = $attendee_email;
|
||||
$attendee->event_id = $event_id;
|
||||
$attendee->order_id = $order->id;
|
||||
$attendee->ticket_id = $ticket_id;
|
||||
$attendee->account_id = Auth::user()->account_id;
|
||||
$attendee->reference = $order->order_reference . '-1';
|
||||
$attendee->save();
|
||||
|
||||
if ($email_attendee == '1') {
|
||||
$this->dispatch(new OrderTicketsCommand($order, false));
|
||||
}
|
||||
|
||||
session()->flash('message', 'Attendee Successfully Created');
|
||||
|
||||
DB::commit();
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'redirectUrl' => route('showEventAttendees', [
|
||||
'event_id' => $event_id,
|
||||
]),
|
||||
]);
|
||||
|
||||
} catch (Exception $e) {
|
||||
|
||||
Log::error($e);
|
||||
DB::rollBack();
|
||||
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'error' => 'An error occurred while creating this attendee. Please try again.'
|
||||
]);
|
||||
}
|
||||
|
||||
session()->flash('message', 'Attendee Successfully Created');
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'id' => $attendee->id,
|
||||
'redirectUrl' => route('showEventAttendees', [
|
||||
'event_id' => $event_id,
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Show the 'Import Attendee' modal
|
||||
*
|
||||
* @param Request $request
|
||||
|
|
@ -222,8 +239,8 @@ class EventAttendeesController extends MyBaseController
|
|||
}
|
||||
|
||||
return view('ManageEvent.Modals.ImportAttendee', [
|
||||
'event' => $event,
|
||||
'tickets' => $event->tickets()->lists('title', 'id'),
|
||||
'event' => $event,
|
||||
'tickets' => $event->tickets()->lists('title', 'id'),
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -238,104 +255,105 @@ class EventAttendeesController extends MyBaseController
|
|||
public function postImportAttendee(Request $request, $event_id)
|
||||
{
|
||||
$rules = [
|
||||
'ticket_id' => 'required|exists:tickets,id,account_id,'.\Auth::user()->account_id,
|
||||
'ticket_price' => 'numeric',
|
||||
'attendees_list' => 'required|mimes:csv,txt|max:5000|',
|
||||
'ticket_id' => 'required|exists:tickets,id,account_id,' . \Auth::user()->account_id,
|
||||
'ticket_price' => 'numeric',
|
||||
'attendees_list' => 'required|mimes:csv,txt|max:5000|',
|
||||
];
|
||||
|
||||
$messages = [
|
||||
'ticket_id.exists' => 'The ticket you have selected does not exist',
|
||||
'ticket_id.exists' => 'The ticket you have selected does not exist',
|
||||
];
|
||||
|
||||
$validator = Validator::make($request->all(), $rules, $messages);
|
||||
if ($validator->fails()) {
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
]);
|
||||
|
||||
|
||||
}
|
||||
|
||||
$ticket_id = $request->get('ticket_id');
|
||||
$ticket_price = $request->get('ticket_price');
|
||||
if($request->get('ticket_price') == null){
|
||||
$ticket_price = 0;
|
||||
}
|
||||
$email_attendee = $request->get('email_ticket');
|
||||
$num_added = 0;
|
||||
if ($request->file('attendees_list')) {
|
||||
|
||||
$the_file = Excel::load($request->file('attendees_list')->getRealPath(), function($reader) {})->get();
|
||||
|
||||
// Loop through
|
||||
foreach($the_file as $rows) {
|
||||
if(!empty($rows['first_name']) && !empty($rows['last_name']) && !empty($rows['email'])){
|
||||
$num_added++;
|
||||
$attendee_first_name = $rows['first_name'];
|
||||
$attendee_last_name = $rows['last_name'];
|
||||
$attendee_email = $rows['email'];
|
||||
|
||||
error_log ($ticket_id .' '. $ticket_price. ' '. $email_attendee);
|
||||
|
||||
|
||||
/**
|
||||
* Create the order
|
||||
*/
|
||||
$order = new Order();
|
||||
$order->first_name = $attendee_first_name;
|
||||
$order->last_name = $attendee_last_name;
|
||||
$order->email = $attendee_email;
|
||||
$order->order_status_id = config('attendize.order_complete');
|
||||
$order->amount = $ticket_price;
|
||||
$order->account_id = Auth::user()->account_id;
|
||||
$order->event_id = $event_id;
|
||||
$order->save();
|
||||
/**
|
||||
* Update qty sold
|
||||
*/
|
||||
$ticket = Ticket::scope()->find($ticket_id);
|
||||
$ticket->increment('quantity_sold');
|
||||
$ticket->increment('sales_volume', $ticket_price);
|
||||
$ticket->event->increment('sales_volume', $ticket_price);
|
||||
|
||||
/**
|
||||
* Insert order item
|
||||
*/
|
||||
$orderItem = new OrderItem();
|
||||
$orderItem->title = $ticket->title;
|
||||
$orderItem->quantity = 1;
|
||||
$orderItem->order_id = $order->id;
|
||||
$orderItem->unit_price = $ticket_price;
|
||||
$orderItem->save();
|
||||
|
||||
/**
|
||||
* Update the event stats
|
||||
*/
|
||||
$event_stats = new EventStats();
|
||||
$event_stats->updateTicketsSoldCount($event_id, 1);
|
||||
$event_stats->updateTicketRevenue($ticket_id, $ticket_price);
|
||||
|
||||
/**
|
||||
* Create the attendee
|
||||
*/
|
||||
$attendee = new Attendee();
|
||||
$attendee->first_name = $attendee_first_name;
|
||||
$attendee->last_name = $attendee_last_name;
|
||||
$attendee->email = $attendee_email;
|
||||
$attendee->event_id = $event_id;
|
||||
$attendee->order_id = $order->id;
|
||||
$attendee->ticket_id = $ticket_id;
|
||||
$attendee->account_id = Auth::user()->account_id;
|
||||
$attendee->reference = $order->order_reference.'-1';
|
||||
$attendee->save();
|
||||
|
||||
if ($email_attendee == '1') {
|
||||
$this->dispatch(new OrderTicketsCommand($order, false));
|
||||
}
|
||||
}
|
||||
};
|
||||
if ($request->get('ticket_price') == null) {
|
||||
$ticket_price = 0;
|
||||
}
|
||||
|
||||
$email_attendee = $request->get('email_ticket');
|
||||
$num_added = 0;
|
||||
if ($request->file('attendees_list')) {
|
||||
|
||||
$the_file = Excel::load($request->file('attendees_list')->getRealPath(), function ($reader) {
|
||||
})->get();
|
||||
|
||||
// Loop through
|
||||
foreach ($the_file as $rows) {
|
||||
if (!empty($rows['first_name']) && !empty($rows['last_name']) && !empty($rows['email'])) {
|
||||
$num_added++;
|
||||
$attendee_first_name = $rows['first_name'];
|
||||
$attendee_last_name = $rows['last_name'];
|
||||
$attendee_email = $rows['email'];
|
||||
|
||||
error_log($ticket_id . ' ' . $ticket_price . ' ' . $email_attendee);
|
||||
|
||||
|
||||
/**
|
||||
* Create the order
|
||||
*/
|
||||
$order = new Order();
|
||||
$order->first_name = $attendee_first_name;
|
||||
$order->last_name = $attendee_last_name;
|
||||
$order->email = $attendee_email;
|
||||
$order->order_status_id = config('attendize.order_complete');
|
||||
$order->amount = $ticket_price;
|
||||
$order->account_id = Auth::user()->account_id;
|
||||
$order->event_id = $event_id;
|
||||
$order->save();
|
||||
/**
|
||||
* Update qty sold
|
||||
*/
|
||||
$ticket = Ticket::scope()->find($ticket_id);
|
||||
$ticket->increment('quantity_sold');
|
||||
$ticket->increment('sales_volume', $ticket_price);
|
||||
$ticket->event->increment('sales_volume', $ticket_price);
|
||||
|
||||
/**
|
||||
* Insert order item
|
||||
*/
|
||||
$orderItem = new OrderItem();
|
||||
$orderItem->title = $ticket->title;
|
||||
$orderItem->quantity = 1;
|
||||
$orderItem->order_id = $order->id;
|
||||
$orderItem->unit_price = $ticket_price;
|
||||
$orderItem->save();
|
||||
|
||||
/**
|
||||
* Update the event stats
|
||||
*/
|
||||
$event_stats = new EventStats();
|
||||
$event_stats->updateTicketsSoldCount($event_id, 1);
|
||||
$event_stats->updateTicketRevenue($ticket_id, $ticket_price);
|
||||
|
||||
/**
|
||||
* Create the attendee
|
||||
*/
|
||||
$attendee = new Attendee();
|
||||
$attendee->first_name = $attendee_first_name;
|
||||
$attendee->last_name = $attendee_last_name;
|
||||
$attendee->email = $attendee_email;
|
||||
$attendee->event_id = $event_id;
|
||||
$attendee->order_id = $order->id;
|
||||
$attendee->ticket_id = $ticket_id;
|
||||
$attendee->account_id = Auth::user()->account_id;
|
||||
$attendee->reference = $order->order_reference . '-1';
|
||||
$attendee->save();
|
||||
|
||||
if ($email_attendee == '1') {
|
||||
$this->dispatch(new OrderTicketsCommand($order, false));
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
session()->flash('message', $num_added . ' Attendees Successfully Created');
|
||||
|
||||
return response()->json([
|
||||
|
|
@ -398,8 +416,8 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
if ($validator->fails()) {
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -415,18 +433,18 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
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)
|
||||
->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->subject($data['subject']);
|
||||
->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
|
||||
->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->subject($data['subject']);
|
||||
});
|
||||
|
||||
/* Could bcc in the above? */
|
||||
if ($request->get('send_copy') == '1') {
|
||||
Mail::send('Emails.messageAttendees', $data, function ($message) use ($attendee, $data) {
|
||||
$message->to($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
|
||||
->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->subject($data['subject'].'[ORGANISER COPY]');
|
||||
->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
|
||||
->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->subject($data['subject'] . '[ORGANISER COPY]');
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -445,8 +463,8 @@ class EventAttendeesController extends MyBaseController
|
|||
public function showMessageAttendees(Request $request, $event_id)
|
||||
{
|
||||
$data = [
|
||||
'event' => Event::scope()->find($event_id),
|
||||
'tickets' => Event::scope()->find($event_id)->tickets()->lists('title', 'id')->toArray(),
|
||||
'event' => Event::scope()->find($event_id),
|
||||
'tickets' => Event::scope()->find($event_id)->tickets()->lists('title', 'id')->toArray(),
|
||||
];
|
||||
|
||||
return view('ManageEvent.Modals.MessageAttendees', $data);
|
||||
|
|
@ -471,8 +489,8 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
if ($validator->fails()) {
|
||||
return Response::json([
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -480,8 +498,8 @@ class EventAttendeesController extends MyBaseController
|
|||
$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');
|
||||
}
|
||||
$message->event_id = $event_id;
|
||||
$message->save();
|
||||
|
||||
|
|
@ -502,39 +520,47 @@ class EventAttendeesController extends MyBaseController
|
|||
public function showExportAttendees($event_id, $export_as = 'xls')
|
||||
{
|
||||
|
||||
Excel::create('attendees-as-of-'.date('d-m-Y-g.i.a'), function ($excel) use ($event_id) {
|
||||
Excel::create('attendees-as-of-' . date('d-m-Y-g.i.a'), function ($excel) use ($event_id) {
|
||||
|
||||
$excel->setTitle('Attendees List');
|
||||
|
||||
// Chain the setters
|
||||
$excel->setCreator(config('attendize.app_name'))
|
||||
->setCompany(config('attendize.app_name'));
|
||||
->setCompany(config('attendize.app_name'));
|
||||
|
||||
$excel->sheet('attendees_sheet_1', function ($sheet) use ($event_id) {
|
||||
|
||||
|
||||
DB::connection()->setFetchMode(\PDO::FETCH_ASSOC);
|
||||
$data = DB::table('attendees')
|
||||
->where('attendees.event_id', '=', $event_id)
|
||||
->where('attendees.is_cancelled', '=', 0)
|
||||
->where('attendees.account_id', '=', Auth::user()->account_id)
|
||||
->join('events', 'events.id', '=', 'attendees.event_id')
|
||||
->join('orders', 'orders.id', '=', 'attendees.order_id')
|
||||
->join('tickets', 'tickets.id', '=', 'attendees.ticket_id')
|
||||
->select([
|
||||
'attendees.first_name',
|
||||
'attendees.last_name',
|
||||
'attendees.email',
|
||||
'attendees.reference',
|
||||
'orders.order_reference',
|
||||
'tickets.title',
|
||||
'orders.created_at',
|
||||
DB::raw("(CASE WHEN attendees.has_arrived THEN 'YES' ELSE 'NO' END) AS has_arrived"),
|
||||
'attendees.arrival_time',
|
||||
])->get();
|
||||
->where('attendees.account_id', '=', Auth::user()->account_id)
|
||||
->join('events', 'events.id', '=', 'attendees.event_id')
|
||||
->join('orders', 'orders.id', '=', 'attendees.order_id')
|
||||
->join('tickets', 'tickets.id', '=', 'attendees.ticket_id')
|
||||
->select([
|
||||
'attendees.first_name',
|
||||
'attendees.last_name',
|
||||
'attendees.email',
|
||||
'attendees.reference',
|
||||
'orders.order_reference',
|
||||
'tickets.title',
|
||||
'orders.created_at',
|
||||
DB::raw("(CASE WHEN attendees.has_arrived THEN 'YES' ELSE 'NO' END) AS has_arrived"),
|
||||
'attendees.arrival_time',
|
||||
])->get();
|
||||
|
||||
$sheet->fromArray($data);
|
||||
$sheet->row(1, [
|
||||
'First Name', 'Last Name', 'Email', 'Ticket Reference', 'Order Reference', 'Ticket Type', 'Purchase Date', 'Has Arrived', 'Arrival Time',
|
||||
'First Name',
|
||||
'Last Name',
|
||||
'Email',
|
||||
'Ticket Reference',
|
||||
'Order Reference',
|
||||
'Ticket Type',
|
||||
'Purchase Date',
|
||||
'Has Arrived',
|
||||
'Arrival Time',
|
||||
]);
|
||||
|
||||
// Set gray background on first row
|
||||
|
|
@ -578,7 +604,7 @@ class EventAttendeesController extends MyBaseController
|
|||
{
|
||||
$rules = [
|
||||
'first_name' => 'required',
|
||||
'ticket_id' => 'required|exists:tickets,id,account_id,'.Auth::user()->account_id,
|
||||
'ticket_id' => 'required|exists:tickets,id,account_id,' . Auth::user()->account_id,
|
||||
'email' => 'required|email',
|
||||
];
|
||||
|
||||
|
|
@ -591,8 +617,8 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
if ($validator->fails()) {
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
'status' => 'error',
|
||||
'messages' => $validator->messages()->toArray(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -643,8 +669,8 @@ class EventAttendeesController extends MyBaseController
|
|||
|
||||
if ($attendee->is_cancelled) {
|
||||
return Response::json([
|
||||
'status' => 'success',
|
||||
'message' => 'Attendee Already Cancelled',
|
||||
'status' => 'success',
|
||||
'message' => 'Attendee Already Cancelled',
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
@ -660,9 +686,9 @@ class EventAttendeesController extends MyBaseController
|
|||
if ($request->get('notify_attendee') == '1') {
|
||||
Mail::send('Emails.notifyCancelledAttendee', $data, function ($message) use ($attendee) {
|
||||
$message->to($attendee->email, $attendee->full_name)
|
||||
->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
|
||||
->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->subject('You\'re ticket has been cancelled');
|
||||
->from(config('attendize.outgoing_email_noreply'), $attendee->event->organiser->name)
|
||||
->replyTo($attendee->event->organiser->email, $attendee->event->organiser->name)
|
||||
->subject('You\'re ticket has been cancelled');
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue