/// <summary> /// When receiving the team /// </summary> /// <param name="teamId"></param> private async void TeamSelected(string teamId) { if (teamId.Contains("teamId")) { var TeamId = teamId.Split('=')[1]; //get team id and load all it's matches and fixtures GetMatchesAndFixtures(TeamId); //loop through the live matches to find if the team is currently playing foreach (Match match in await repository.LoadLive()) { if (TeamId == match.home_id || TeamId == match.away_id) { CurrentlyLive = true; LiveMatch = match; LiveMatch.date = "LIVE"; return; } else { CurrentlyLive = false; } } } if (teamId.Contains("teamName")) { TeamName = teamId.Split('=')[1]; //load the team logo foreach (Logo logo in repository.LoadLogos()) { if (TeamName.ToLower() == logo.team_name.ToLower()) { TeamLogo = logo.logo; return; } if (TeamName.Contains(logo.team_name) || $"FC {TeamName}".Contains(logo.team_name) || $"{TeamName} FC".Contains(logo.team_name)) { TeamLogo = logo.logo; return; } TeamLogo = ""; } } }
/// <summary> /// Load the league standings /// </summary> /// <param name="country"></param> private async void SortStandings(Country country) { try { StandingsList = await repository.LoadStandings(country.competition_id); if (StandingsList != null) { string leagueCheck = ""; bool groupedLeague = false; foreach (Table team in StandingsList) { if (string.IsNullOrWhiteSpace(leagueCheck)) { leagueCheck = team.league_id; } //if teams are all from the same league if (leagueCheck == team.league_id) { groupedLeague = false; } //if there are teams from different leagues e.g. group stage of a cup else { groupedLeague = true; break; } //load the team logos foreach (Logo logo in repository.LoadLogos()) { if (team.name.ToLower() == logo.team_name.ToLower()) { team.logo = logo.logo; break; } if (team.name.Contains(logo.team_name) || $"FC {team.name}".Contains(logo.team_name) || $"{team.name} FC".Contains(logo.team_name)) { team.logo = logo.logo; } } } //if standings for a cup group then sort and group them by their group StandingsList = (groupedLeague) ? StandingsList.Where(t => t.league_id == country.league_id).ToList() : StandingsList; HighlightCurrentTeams(country); StandingsVis = (StandingsList.Count != 0) ? true : false; } GoalscorerList = await repository.LoadTopGoalscorers(country.competition_id); if (GoalscorerList != null) { var i = 0; foreach (Goalscorer goalscorer in GoalscorerList) { i++; goalscorer.rank = i.ToString(); foreach (Logo logo in repository.LoadLogos()) { if (goalscorer.team.name.ToLower() == logo.team_name.ToLower()) { goalscorer.logo = logo.logo; break; } if (goalscorer.team.name.Contains(logo.team_name) || $"FC {goalscorer.team.name}".Contains(logo.team_name) || $"{goalscorer.team.name} FC".Contains(logo.team_name)) { goalscorer.logo = logo.logo; } } } GoalscorersVis = (GoalscorerList.Count != 0) ? true : false; } //display standings tab if league standings are available and hide if not if (StandingsList?.Count != 0 || GoalscorerList?.Count != 0) { Messenger.Default.Send("leagueAvailable"); StandingsIndex = (StandingsVis) ? 0 : 1; } else { Messenger.Default.Send("leagueUnavailable"); } } catch (Exception ex) { if (ex.Message != "BadRequest") { errorHandler.CheckErrorMessage(ex); } else { Messenger.Default.Send("leagueUnavailable"); } } }