Updated Chart Fetch functions in order to create a more generic template
This commit is contained in:
parent
35a6686cd5
commit
76878e7745
@ -127,18 +127,8 @@ namespace EFB.Controllers
|
||||
|
||||
/*-----Chart Fetching Operations--------*/
|
||||
|
||||
//Prepare data to be send off with request(charts)
|
||||
headerData = new Dictionary<string, string>();
|
||||
headerData.Add("referer", "luke-else.co.uk");
|
||||
|
||||
Dictionary<string, string> formData = new Dictionary<string, string>();
|
||||
|
||||
formData.Add("token", Environment.GetEnvironmentVariable("ChartFoxAPIKey", EnvironmentVariableTarget.User));
|
||||
var body = new FormUrlEncodedContent(formData);
|
||||
|
||||
//make Charts request
|
||||
var requestDepartureCharts = API.Post<ChartResponse>($"https://chartfox.org/api/charts/grouped/{departure}", headerData, body);
|
||||
var requestArrivalCharts = API.Post<ChartResponse>($"https://chartfox.org/api/charts/grouped/{arrival}", headerData, body);
|
||||
var requestDepartureCharts = ChartModel.FetchAsync(departure);
|
||||
var requestArrivalCharts = ChartModel.FetchAsync(arrival);
|
||||
|
||||
/*----------------------------------*/
|
||||
|
||||
@ -170,16 +160,16 @@ namespace EFB.Controllers
|
||||
if (collected)
|
||||
{
|
||||
//Get Response from Charts
|
||||
ResponseModel<ChartResponse> responseDepartureCharts = await requestDepartureCharts;
|
||||
if (responseDepartureCharts.Error == null && responseDepartureCharts.Result.Status == "success")
|
||||
ChartList departureCharts = await requestDepartureCharts;
|
||||
if (departureCharts != null)
|
||||
{
|
||||
user.DepartureCharts = new ChartModel(responseDepartureCharts.Result.Response);
|
||||
user.DepartureCharts = new ChartModel(departureCharts);
|
||||
}
|
||||
|
||||
ResponseModel<ChartResponse> responseArrivalCharts = await requestArrivalCharts;
|
||||
if (responseArrivalCharts.Error == null && responseArrivalCharts.Result.Status == "success")
|
||||
ChartList arrivalCharts = await requestArrivalCharts;
|
||||
if (arrivalCharts != null)
|
||||
{
|
||||
user.ArrivalCharts = new ChartModel(responseArrivalCharts.Result.Response);
|
||||
user.ArrivalCharts = new ChartModel(arrivalCharts);
|
||||
}
|
||||
|
||||
//fill in route
|
||||
|
@ -1,9 +1,18 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using EFB.Models.JSON;
|
||||
using System.Threading;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Net.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Newtonsoft.Json;
|
||||
using EFB.Models;
|
||||
using EFB.Models.JSON;
|
||||
using EFB.Sessions;
|
||||
using EFB.Controllers.Form;
|
||||
using EFB.Controllers.API;
|
||||
|
||||
namespace EFB.Models
|
||||
{
|
||||
@ -41,6 +50,29 @@ namespace EFB.Models
|
||||
}
|
||||
return new Chart[]{};
|
||||
}
|
||||
|
||||
public static async Task<ChartList> FetchAsync(string ICAO){
|
||||
Console.WriteLine("Start");
|
||||
if (FormAuthenticator.ValidateICAOCode(ICAO))
|
||||
{
|
||||
APIInterface API = new APIInterface();
|
||||
Dictionary <string, string> headerData = new Dictionary<string, string>();
|
||||
headerData.Add("referer", "luke-else.co.uk");
|
||||
|
||||
Dictionary<string, string> formData = new Dictionary<string, string>();
|
||||
|
||||
formData.Add("token", Environment.GetEnvironmentVariable("ChartFoxAPIKey", EnvironmentVariableTarget.User));
|
||||
FormUrlEncodedContent body = new FormUrlEncodedContent(formData);
|
||||
|
||||
//make Charts request
|
||||
var requestCharts = await API.Post<ChartResponse>($"https://chartfox.org/api/charts/grouped/{ICAO}", headerData, body);
|
||||
Console.WriteLine("End");
|
||||
return requestCharts.Result.Response;
|
||||
}else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class Pinned
|
||||
|
Loading…
Reference in New Issue
Block a user