static function GetLatestTours($query_data) { Static::init(); $query_data['upcoming'] = true; $api_response = Cache::remember('latest_tours_' . $query_data['skip'] . '_' . $query_data['take'] . http_build_query($query_data), 20, function () use($query_data) { return json_decode(self::$api->get(self::$api_url . '/tours?' . http_build_query(array_merge($query_data, ['access_token' => Session::get('access_token')])))->getBody(), false); }); if ($api_response->status != 'success') { return null; } ////////////////////////////////////////////// // add cheapest upcoming schedules // ////////////////////////////////////////////// foreach ($api_response->data->data as $k => $tour) { $api_response->data->data[$k]->cheapest_upcoming_schedules = Static::get_cheapest_upcoming_schedules_to_tour($tour); $api_response->data->data[$k]->upcoming_schedules = Static::get_upcoming_schedules_to_tour($api_response->data->data[$k]->cheapest_upcoming_schedules); } return ['count' => $api_response->data->count, 'data' => API::reformat_images($api_response->data->data)]; }