Example #1
0
 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');
 }