internal void CheckOnFull() { IsFull = true; FullEvent?.Invoke(this); if (Passengers.Count < sits) { IsFull = false; } if (IsFull) { StopTime = -1; } }
private static FullEvent ParseEventPage(Task <HttpResponseMessage> response) { var content = response.Result.Content; string htmlContent = content.ReadAsStringAsync().Result; HtmlDocument html = new HtmlDocument(); html.LoadHtml(htmlContent); HtmlNode document = html.DocumentNode; FullEvent model = new FullEvent(); //Event start and finish dates long dateStart = long.Parse(document.QuerySelectorAll(".eventdate span").First().Attributes["data-unix"].Value); long dateFinish = long.Parse(document.QuerySelectorAll(".eventdate span").Last().Attributes["data-unix"].Value); model.DateStart = DateTimeFromUnixTimestampMillis(dateStart); model.DateEnd = DateTimeFromUnixTimestampMillis(dateFinish); //Event id model.Id = int.Parse(document.QuerySelector(".event-header-component a").Attributes["href"].Value.Split('/', StringSplitOptions.RemoveEmptyEntries)[1]); //Event name model.Name = document.QuerySelector(".eventname").InnerText; //Event prizepool model.PrizePool = document.QuerySelector(".prizepool.text-ellipsis").InnerText; //Event location Country countryModel = new Country(); countryModel.Name = document.QuerySelector(".flag-align span").InnerText; countryModel.Code = document.QuerySelector(".flag-align img").Attributes["src"].Value.Split('/').Last().Split(".").First(); model.Location = countryModel; //Event IsOnline model.IsOnline = model.Location.Name.ToLower().Contains("online"); //Related events List <Event> relatedEvents = new List <Event>(); var relatedEventNodes = document.QuerySelectorAll(".related-event img"); foreach (var relatedEventNode in relatedEventNodes) { try { Event relatedEventModel = new Event(); relatedEventModel.Name = relatedEventNode.Attributes["title"].Value; relatedEventModel.Id = int.Parse(relatedEventNode.Attributes["src"].Value.Split('/').Last().Split(".").First()); relatedEvents.Add(relatedEventModel); } catch (Exception) { } } model.RelatedEvents = relatedEvents.ToArray(); //Attending teams List <Team> attendingTeams = new List <Team>(); var attendingTeamNodes = document.QuerySelectorAll(".teams-attending .team-box .team-name a"); foreach (var attendingTeamNode in attendingTeamNodes) { Team attendingTeamModel = new Team(); attendingTeamModel.Name = attendingTeamNode.QuerySelector("div").InnerText; attendingTeamModel.Id = int.Parse(attendingTeamNode.Attributes["href"].Value.Split('/', StringSplitOptions.RemoveEmptyEntries)[1]); attendingTeams.Add(attendingTeamModel); } model.Teams = attendingTeams.ToArray(); return(model); }