/** * Bind data to the view. * * @param Route $route * @param View $view */ public function compose(View $view) { $routeService = new Route(); $pilot = PilotRepository::getCurrentPilot(); $currentBooking = Booking::has('pirep', '<', 1)->where('pilot_id', '=', $pilot->id)->first(); $view->with('currentBooking', $currentBooking); $view->with('upcomingBookings', Booking::has('pirep', '<', 1)->limit(10)->skip(1)->where('pilot_id', '=', $pilot->id)->get()); $view->with('routePoints', $routeService->getAllPointsForRoute($currentBooking->route)); $view->with('depMetar', Cache::remember('Metar:' . $currentBooking->route->departureAirport->icao, 10, function () use($currentBooking) { return file_get_contents('http://weather.noaa.gov/pub/data/observations/metar/decoded/' . strtoupper($currentBooking->route->departureAirport->icao) . '.TXT'); })); $view->with('arrMetar', Cache::remember('Metar:' . $currentBooking->route->arrivalAirport->icao, 10, function () use($currentBooking) { return file_get_contents('http://weather.noaa.gov/pub/data/observations/metar/decoded/' . strtoupper($currentBooking->route->arrivalAirport->icao) . '.TXT'); })); }
/** * Bind data to the view. * * @param View $view * @return void */ public function compose(View $view) { $pilot = PilotRepository::getCurrentPilot(); $currentLocation = $pilot->location; $lastBooking = Booking::has('pirep', '<', 1)->where('pilot_id', '=', $pilot->id)->orderBy('created_at', 'desc')->first(); if (count($lastBooking) == 1) { $currentLocation = $lastBooking->route->arrivalAirport; } $view->with('currentLocation', $currentLocation); // Ordered flights list $sortedRoutes = []; $availableRoutes = RoutesRepository::getRoutesFrom($currentLocation); $view->with('availableRoutes', $availableRoutes); foreach ($availableRoutes as $route) { $sortedRoutes[$route->arrivalAirport->region->country->continent][$route->arrivalAirport->region->country->name][$route->arrivalAirport->region->name][] = (object) $route->arrivalAirport->toArray(); } $view->with('sortedRoutes', $sortedRoutes); }
public static function countBookedFlights() { return count(Booking::has('pirep', '<', 1)->where('pilot_id', '=', self::getCurrentPilot()->id)->get()->toArray()); }