public async Task <IActionResult> Edit(int id, [Bind("PlayersOnTeamsId,DatumId,BHTeamId")] PlayersOnTeams playersOnTeams)
        {
            if (id != playersOnTeams.PlayersOnTeamsId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(playersOnTeams);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PlayersOnTeamsExists(playersOnTeams.PlayersOnTeamsId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BHTeamId"] = new SelectList(_context.BHTeams, "BHTeamId", "BHTeamId", playersOnTeams.BHTeamId);
            return(View(playersOnTeams));
        }
        public async Task <IActionResult> Create([Bind("PlayersOnTeamsId,DatumId,BHTeamId")] PlayersOnTeams playersOnTeams)
        {
            if (ModelState.IsValid)
            {
                _context.Add(playersOnTeams);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BHTeamId"] = new SelectList(_context.BHTeams, "BHTeamId", "BHTeamId", playersOnTeams.BHTeamId);
            return(View(playersOnTeams));
        }
        public async Task <IActionResult> AddPlayer(string first_name, string last_name, string position, int year, int id)
        {
            var teamID = _session.GetInt32("Team");
            var team   = await _context.BHTeams.Include(x => x.Players).FirstOrDefaultAsync(m => m.BHTeamId == teamID);

            if (team.Players.Any(x => x.PlayerAPINum == id))
            {
                return(RedirectToAction("Details", "BHTeams", new { id = teamID }));
            }

            if (position == null || year < 2018 && year != 0)
            {
                var stats = await GetStats(id, year);

                if (stats == null)
                {
                    return(RedirectToAction("Index"));               // no stats!
                }
                var playerOnTeam = new PlayersOnTeams
                {
                    BHTeamId     = (int)teamID,
                    BHTeam       = team,
                    PlayerAPINum = id,
                    Name         = first_name + " " + last_name,
                    Position     = position,
                    Year         = year,
                    PPG          = stats.pts,
                    Steals       = stats.stl,
                    Rebounds     = stats.reb
                };
                if (team.Players.Any(x => x.PlayerAPINum == id))
                {
                    return(RedirectToAction("Details", "BHTeams", new { id = teamID }));
                }
                _context.Add(playerOnTeam);
                await _context.SaveChangesAsync();
            }

            if (position != null && year == 2018 || year == 0)
            {
                if (User.Identity.IsAuthenticated && teamID != null)
                {
                    team = await _context.BHTeams.FirstOrDefaultAsync(m => m.BHTeamId == teamID);

                    year = 2018;

                    var stats = await GetStats(id, year);

                    if (stats == null)
                    {
                        return(RedirectToAction("Index"));               // no stats!
                    }
                    var playerOnTeam = new PlayersOnTeams
                    {
                        BHTeamId     = (int)teamID,
                        BHTeam       = team,
                        PlayerAPINum = id,
                        Name         = first_name + " " + last_name,
                        Position     = position,
                        Year         = year,
                        PPG          = stats.pts,
                        Steals       = stats.stl,
                        Rebounds     = stats.reb
                    };

                    _context.Add(playerOnTeam);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction("Details", "BHTeams", new { id = teamID }));
                }
                else
                {
                    return(RedirectToAction("Index", "Home"));
                }
            }

            if (User.Identity.IsAuthenticated && teamID != null)
            {
                team = await _context.BHTeams.FirstOrDefaultAsync(m => m.BHTeamId == teamID);


                var stats = await GetStats(id, year);

                if (stats == null)
                {
                    return(RedirectToAction("Index"));               // no stats!
                }
                var playerOnTeam = new PlayersOnTeams
                {
                    BHTeamId     = (int)teamID,
                    BHTeam       = team,
                    PlayerAPINum = id,
                    Name         = first_name + " " + last_name,
                    Position     = position,
                    Year         = year,
                    PPG          = stats.pts,
                    Steals       = stats.stl,
                    Rebounds     = stats.reb
                };

                return(RedirectToAction("Details", "BHTeams", new { id = teamID }));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }