public function complete(CompleteRegistrationRequest $request) { // if no invoice number, create one $invoice = new Invoice(); $invoice->advisor_id = Session::get('advisor')->id; $invoice->event_id = Session::get('event')->id; $invoice->school_id = Session::get('school')->id; $invoice->total = Session::get('advisor')->total(); $invoice->payment_method = $request->input('payment_method'); $invoice->makeKey(); $invoice->save(); // set advisor as complete Session::get('advisor')->invoice_id = $invoice->id; Session::get('advisor')->save(); // set all attendees as complete foreach (Session::get('advisor')->attendees as $attendee) { $attendee->update(['invoice_id' => $invoice->id]); } // send email Session::get('advisor')->sendConfirmationEmail(); return redirect('/event/' . Session::get('event')->slug . '/step/5'); }