public async Task <IActionResult> GetTeam()
        {
            var userId  = _caller.Claims.Single(c => c.Type == "id");
            var appuser = await _context.AppUser.Include(c => c.IdentityUser).SingleAsync(c => c.IdentityUser.Id == userId.Value);

            var userLeagues = _context.UserLeagues.ToList();
            var playerTeams = _context.PlayerTeam.ToList();
            var players     = _context.Players.ToList();
            var teams       = _context.Teams.ToList();
            var leagues     = _context.Leagues.ToList();

            UserLeague userInLeagues = new UserLeague();

            PlayerTeamsViewModel ptvm = new PlayerTeamsViewModel();

            ptvm.players = new List <Player>();
            List <PlayerTeamsViewModel> ptvmList = new List <PlayerTeamsViewModel>();

            foreach (UserLeague UL in userLeagues)
            {
                if (UL.AppUserForeignKey == appuser.Id)
                {
                    userInLeagues = UL;
                    foreach (League L in leagues)
                    {
                        if (userInLeagues.LeagueForeignKey == L.LeagueId)
                        {
                            ptvm.leagueName = L.LeagueName;
                        }
                    }

                    foreach (Team T in teams)
                    {
                        if (T.TeamID == UL.TeamForeignKey)
                        {
                            ptvm.teamName = T.TeamName;
                            ptvm.teamID   = T.TeamID;
                        }
                    }

                    foreach (PlayerTeam PT in playerTeams)
                    {
                        if (userInLeagues.TeamForeignKey == PT.TeamForeignKey)
                        {
                            foreach (Player P in players)
                            {
                                if (P.PlayerID == PT.PlayerForeignKey)
                                {
                                    ptvm.players.Add(P);
                                }
                            }
                        }
                    }
                    ptvmList.Add(ptvm);
                    ptvm         = new PlayerTeamsViewModel();
                    ptvm.players = new List <Player>();
                }
            }

            return(Ok(ptvmList));
        }
        public async Task <IActionResult> get()
        {
            var userLeagues = _context.UserLeagues.ToList();
            var playerTeams = _context.PlayerTeam.ToList();
            var players     = _context.Players.ToList();
            var teams       = _context.Teams.ToList();
            var leagues     = _context.Leagues.ToList();
            var users       = _context.AppUser.ToList();

            UserLeague userInLeagues = new UserLeague();

            DashboardViewModel   dvm  = new DashboardViewModel();
            PlayerTeamsViewModel ptvm = new PlayerTeamsViewModel();

            ptvm.players    = new List <Player>();
            ptvm.scoreSoFar = 0;
            dvm.teams       = new List <PlayerTeamsViewModel>();
            List <DashboardViewModel> dvmList = new List <DashboardViewModel>();

            foreach (League L in leagues)
            {
                if (L.Active == true)
                {
                    dvm.leagueName = L.LeagueName;
                    dvm.leagueID   = L.LeagueId;

                    foreach (UserLeague UL in userLeagues)
                    {
                        if (UL.LeagueForeignKey == dvm.leagueID)
                        {
                            foreach (AppUser AU in users)
                            {
                                if (UL.AppUserForeignKey == AU.Id)
                                {
                                    ptvm.userName = AU.FullName;
                                }
                            }
                            ptvm.teamID = UL.TeamForeignKey;

                            foreach (Team T in teams)
                            {
                                if (ptvm.teamID == T.TeamID)
                                {
                                    ptvm.teamName = T.TeamName;
                                }
                            }

                            foreach (PlayerTeam PT in playerTeams)
                            {
                                if (ptvm.teamID == PT.TeamForeignKey)
                                {
                                    foreach (Player P in players)
                                    {
                                        if (PT.PlayerForeignKey == P.PlayerID)
                                        {
                                            int playerscore = 0;
                                            //Calculate their score so far in the tournament.
                                            if (P.RoundOne != 0 && P.RoundTwo == 0 && P.RoundThree == 0 && P.RoundFour == 0)
                                            {
                                                playerscore += P.RoundOne - 72;
                                            }
                                            else if (P.RoundOne != 0 && P.RoundTwo != 0 && P.RoundThree == 0 && P.RoundFour == 0)
                                            {
                                                playerscore += P.RoundOne + P.RoundTwo - 144;
                                            }
                                            else if (P.RoundOne != 0 && P.RoundTwo != 0 && P.RoundThree != 0 && P.RoundFour == 0)
                                            {
                                                playerscore += P.RoundOne + P.RoundTwo + P.RoundThree - 216;
                                            }
                                            else if (P.RoundOne != 0 && P.RoundTwo != 0 && P.RoundThree != 0 && P.RoundFour != 0)
                                            {
                                                playerscore += P.RoundOne + P.RoundTwo + P.RoundThree + P.RoundFour - 288;
                                            }
                                            else
                                            {
                                                playerscore = 0;
                                            }
                                            ptvm.scoreSoFar += playerscore;
                                            ptvm.players.Add(P);
                                        }
                                    }
                                }
                            }
                        }
                        if (ptvm.teamName != null)
                        {
                            dvm.teams.Add(ptvm);
                            ptvm            = new PlayerTeamsViewModel();
                            ptvm.players    = new List <Player>();
                            ptvm.scoreSoFar = 0;
                        }
                    }
                    dvm.teams = dvm.teams.OrderBy(p => p.scoreSoFar).ToList();
                    dvmList.Add(dvm);
                    dvm       = new DashboardViewModel();
                    dvm.teams = new List <PlayerTeamsViewModel>();
                }
            }

            return(Ok(dvmList));
        }