// GET: Leagues/Details/5
        public ActionResult Details(int?id)
        {
            LeagueTableViewModel ltViewModel = new LeagueTableViewModel();

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            League league = _db.Leagues.Find(id);

            if (league == null)
            {
                return(HttpNotFound());
            }

            ltViewModel.league = league;
            List <Team> unorderedTeamList = new List <Team>();

            foreach (LeagueEntry leagueEntry in league.LeagueEntries)
            {
                unorderedTeamList.Add(leagueEntry.Team);
            }

            ltViewModel.enteredTeams = unorderedTeamList.OrderByDescending(t => t.Points).ThenByDescending(t => t.PointsDifference).ToList();

            return(View(ltViewModel));
        }
        public IActionResult Table(int id)
        {
            var leagueExists = this.leaguesService.LeagueExistsById(id);

            if (!leagueExists)
            {
                var errorViewModel = new ErrorViewModel
                {
                    ErrorMessage = ErrorMessages.LeagueDoesNotExistsErrorMessage
                };

                return(this.View(viewName: GlobalConstants.ErrorViewName, model: errorViewModel));
            }

            var teams = this.teamLeaguesService.LeagueTable <TeamLeagueViewModel>(id)
                        .OrderByDescending(p => p.Points)
                        .ThenByDescending(gd => gd.GoalDifference)
                        .ThenByDescending(gf => gf.GoalsFor)
                        .ToList();

            var allPlayedMatches = this.teamLeaguesService.AllPlayedMatchesCount(id);

            if (allPlayedMatches == GlobalConstants.AllPlayedMatchesInLeague)
            {
                this.leaguesService.SetLeagueStatusToCompleted(id);
            }

            var leagueTableViewModel = new LeagueTableViewModel
            {
                Teams = teams
            };

            return(this.View(leagueTableViewModel));
        }