/** * Show calendar for Aircraft * * @return \Illuminate\Http\Response */ public function calendar($slug) { $flights = FlightThread::whereAircraftUsageId($slug)->with('FlightDays', 'AirportDeparture', 'AirportArrival')->get(); $i = 1; $return = []; $userData = Auth::User()->UserData(); foreach ($flights as $flight) { foreach ($flight->FlightDays as $flightday) { //86400 Sec/Tag $arrival_time = strtotime($flightday->arrival_time); $departure_time = strtotime($flightday->departure_time); if ($arrival_time < $departure_time) { //flying over midnight $left_sec = $departure_time - strtotime('00:00:00'); $width_sec = strtotime('24:00:00') - $departure_time; $left = $left_sec / 86400 * 100; $width = $width_sec / 86400 * 100; $return[$flightday->day][$i]['left'] = $left; $return[$flightday->day][$i]['width'] = $width; $return[$flightday->day][$i]['flightnumber'] = $userData->airline_short . $flight->flight_number; $return[$flightday->day][$i]['departure_airport'] = $flight->AirportDeparture->iata; $return[$flightday->day][$i]['arrival_airport'] = $flight->AirportArrival->iata; $return[$flightday->day][$i]['departure_time'] = date('H:i', $departure_time); $return[$flightday->day][$i]['arrival_time'] = date('H:i', $arrival_time); $width_sec = $arrival_time - strtotime('00:00:00'); $width = $width_sec / 86400 * 100; $return[$flightday->day * 2][999]['left'] = 0; $return[$flightday->day * 2][999]['width'] = $width; $return[$flightday->day * 2][999]['flightnumber'] = $userData->airline_short . $flight->flight_number; $return[$flightday->day * 2][999]['departure_airport'] = $flight->AirportDeparture->iata; $return[$flightday->day * 2][999]['arrival_airport'] = $flight->AirportArrival->iata; $return[$flightday->day * 2][999]['departure_time'] = date('H:i', $departure_time); $return[$flightday->day * 2][999]['arrival_time'] = date('H:i', $arrival_time); } else { $time = $arrival_time - $departure_time; $start_time = $departure_time - strtotime('00:00:00'); $width = $time / 86400 * 100; $left = $start_time / 86400 * 100; $return[$flightday->day][$i]['left'] = $left; $return[$flightday->day][$i]['width'] = $width; $return[$flightday->day][$i]['flightnumber'] = $userData->airline_short . $flight->flight_number; $return[$flightday->day][$i]['departure_airport'] = $flight->AirportDeparture->iata; $return[$flightday->day][$i]['arrival_airport'] = $flight->AirportArrival->iata; $return[$flightday->day][$i]['departure_time'] = date('H:i', $departure_time); $return[$flightday->day][$i]['arrival_time'] = date('H:i', $arrival_time); } $i++; } } return view('template.fleet.calendar', ['days' => $return]); }