public function getDoJumpseat(Route $route) { // todo: VALIDATE! $pilot = PilotRepository::getCurrentPilot(); // Save this jumpseat so we can track them! $booking = new Booking(); $booking->pilot()->associate($pilot); $booking->route()->associate($route); $booking->aircraft_id = null; // This indicates a jumpseat booking $booking->callsign = 'JUMPSEAT'; // This also indicates a jumpseat booking $booking->save(); $booking->delete(); // Put in a dummy PIREP $pirep = new Pirep(); $pirep->booking()->associate($booking); $pirep->pirep_data = ['jumpseat' => true]; $pirep->status = 'complete'; $pirep->points = 0; $pirep->landing_rate = 0; $pirep->fuel_used = 0; $pirep->load = 0; $pirep->save(); $pilot->location()->associate($route->arrivalAirport); $pilot->save(); return redirect('/flights'); }