public static EventListModel GetEvents(GeoCoordinate position, DateTime startDate, DateTime? endDate, int radiusRange, IList<Categories> categories) { EventListModel list = new EventListModel(); foreach (var category in categories) { var eventListModels = (EventListModel)cache.Get(category.ToString().ToUpper()) ?? new EventListModel(); list.EventModels.AddRange(eventListModels.EventModels); } list.EventModels.RemoveAll(x => endDate < x.EventDate || startDate > x.EventDate); list.EventModels.RemoveAll(x => x.Venue == null); list.EventModels.RemoveAll(x => !VenueHelper.IsVenueWithinRadius(x.Venue, position, (int)radiusRange)); return list; }
public override EventListModel GetEvents() { try { using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Add("Accept-Version", "1"); client.DefaultRequestHeaders.Add("Accept", "application/json"); var result = client.GetAsync("http://apis.is/sports/football").Result; if (!result.IsSuccessStatusCode) { return new EventListModel(); } var content = result.Content.ReadAsStringAsync().Result; var content2 = JsonConvert.DeserializeObject<FootballListModel>(content); var eventListModel = new EventListModel { Id = (int)Categories.Football, EventModels = content2.Results .Where(x => !x.Tournament.Contains("lið") && !x.Tournament.Contains("flokkur")) // I want to filter out the youth games. .Select(x => new EventModel { ImageUrl = "Content/sport.png", CategoryId = (int)Categories.Football, EventName = x.HomeTeam + " vs " + x.AwayTeam, EventDescription = this.BuildEventDescription(x), Venue = VenueHelper.GetVenueModel(x.Location), EventDate = this.ParseDateTime(x.Date, x.Time) }) .ToList() }; return eventListModel; } } catch (Exception ex) { Log.Error("An error occured getting football events from apis.is.", ex); return null; } }
public override EventListModel GetEvents() { try { using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Add("Accept-Version", "1"); client.DefaultRequestHeaders.Add("Accept", "application/json"); var result = client.GetAsync("http://apis.is/sports/handball").Result; if (!result.IsSuccessStatusCode) { return new EventListModel(); } var content = result.Content.ReadAsStringAsync().Result; var content2 = JsonConvert.DeserializeObject<HandballListModel>(content); var eventListModel = new EventListModel { Id = (int)Categories.Handball, EventModels = content2.Results .Select(x => new EventModel { ImageUrl = "Content/sport.png", CategoryId = (int)Categories.Handball, EventName = x.Teams, EventDescription = BuildEventDescription(x), Venue = VenueHelper.GetVenueModel(x.Venue), EventDate = ParseDateTime(x.Date, x.Time) }) .ToList() }; return eventListModel; } } catch (Exception ex) { log.Error("An error occured when fetching handball events to apis.is.", ex); return null; } }