public ActionResult League(int LeagueId, int Season)
        {
            // remove after complete
            if (Session["PlayerId"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            //SetColors();
            int playerId = Convert.ToInt32(Session["PlayerId"]);

            // TODO: Year will be implemented later
            //int seasonId = DateTime.Now.Year;

            List <PlayerSelectionViewModel> Selections = new List <PlayerSelectionViewModel>();

            using (NFLLeagueEntities nfl = new NFLLeagueEntities())
            {
                int SeasonId = nfl.Seasons.Where(s => s.Year == Season).Select(s => s.ID).FirstOrDefault();
                foreach (var selection in nfl.GetPlayerSelections(playerId, LeagueId, SeasonId))
                {
                    string TeamName = selection.SelectedTeamId == null ? "" : nfl.Teams.Where(t => t.ID == selection.SelectedTeamId).First().Name;
                    Selections.Add(new PlayerSelectionViewModel(LeagueId, SeasonId, selection.Week, selection.SelectedTeamId, TeamName, nfl.Teams.First(t => t.ID == selection.SelectedTeamId).Colors));
                }
                ViewBag.Header = nfl.Leagues.First(l => l.ID == LeagueId).Name + " - " + nfl.Players.First(p => p.ID == playerId).FirstName;
            }

            return(View(Selections));
        }
        //public ActionResult UpdatePick(int LeagueId, int SeasonId, int Week, int TeamId)
        public ActionResult UpdatePick(UpdatePick pick)
        {
            //if (Session["PlayerId"] == null) return RedirectToAction("Index", "Home");

            int playerId = Convert.ToInt32(Session["PlayerId"]);

            using (NFLLeagueEntities nfl = new NFLLeagueEntities())
            {
                if (nfl.PlayerSelections.Count(ps => ps.PlayerId == playerId && ps.LeagueId == pick.LeagueId && ps.SeasonId == pick.SeasonId && ps.SelectedTeamId == pick.TeamId) > 0)
                {
                    nfl.PlayerSelections.Remove(nfl.PlayerSelections.SingleOrDefault(ps => ps.PlayerId == playerId && ps.LeagueId == pick.LeagueId && ps.SeasonId == pick.SeasonId && ps.SelectedTeamId == pick.TeamId));
                    nfl.SaveChanges();
                }

                var playerSelection = nfl.PlayerSelections.Where(ps => ps.PlayerId == playerId && ps.LeagueId == pick.LeagueId && ps.SeasonId == pick.SeasonId && ps.Week == pick.Week).FirstOrDefault();
                if (playerSelection != null)
                {
                    playerSelection.SelectedTeamId = pick.TeamId;
                }
                else
                {
                    playerSelection = new PlayerSelection()
                    {
                        LeagueId = pick.LeagueId, SeasonId = pick.SeasonId, PlayerId = playerId, Week = pick.Week, SelectedTeamId = pick.TeamId
                    };
                    nfl.PlayerSelections.Add(playerSelection);
                }
                nfl.SaveChanges();
            }
            return(RedirectToAction("WeeklyMatchups", new { pick.LeagueId, pick.SeasonId, pick.Week }));
        }
Exemple #3
0
        public ActionResult Register(LeaguesRegisterViewModel vm)
        {
            using (NFLLeagueEntities nfl = new NFLLeagueEntities())
            {
                if (nfl.Leagues.Where(l => l.Name == vm.LeagueName).Count() > 0)
                {
                    ViewBag.Message = "League Already Exists";
                    return(Register());
                }
                else
                {
                    NFL.League league = new NFL.League();
                    league.Name  = vm.LeagueName;
                    league.Notes = vm.LeagueNotes;
                    league.CommissionerPlayerID = vm.CommissionerPlayerId;
                    league.Created = vm.LeagueRegistrationDate;
                    nfl.Leagues.Add(league);
                    nfl.SaveChanges();
                    foreach (var invitee in vm.Invitees)
                    {
                        //nfl.LeagueInvitations.Add(new LeagueInvitation() { LeagueId = league.ID, PlayerName = invitee.Name, PlayerEmail = invitee.Email, Date = DateTime.Now });
                    }
                    nfl.SaveChanges();
                }
            }

            return(View(vm));
        }
Exemple #4
0
        public ActionResult Register()
        {
            if (Session["PlayerId"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }
            var playerId = Convert.ToInt32(Session["PlayerId"]);

            LeaguesRegisterViewModel leagueRegistration = new LeaguesRegisterViewModel();

            using (NFLLeagueEntities nfl = new NFLLeagueEntities())
            {
                var commissioner = (from p in nfl.Players where p.ID == playerId select new { p.ID, p.FirstName, p.LastName, p.Email }).FirstOrDefault();

                leagueRegistration.CommissionerPlayerId   = commissioner.ID;
                leagueRegistration.CommissionerName       = $"{ commissioner.FirstName } { commissioner.LastName[0] }.";
                leagueRegistration.CommissionerEmail      = commissioner.Email;
                leagueRegistration.LeagueRegistrationDate = DateTime.Now;

                leagueRegistration.StartWeek = nfl.SeasonSchedules.Where(s => s.DateAndTime > DateTime.Now).Select(i => i.Week).Min();
                leagueRegistration.Invitees  = new List <Invitee>()
                {
                    new Invitee {
                        Name = $"{commissioner.FirstName} {commissioner.LastName}", Email = commissioner.Email, NumberOfEntries = 2
                    }
                };
            }

            return(View(leagueRegistration));
        }
Exemple #5
0
        // public int? SelectedTeamId { get; set; }

        public PlayerWeekMatchupViewModel(NFLLeagueEntities nfl, DateTime dateAndTime, int visitorTeamId, int homeTeamId)
        {
            DateAndTime = dateAndTime;
            VisitorTeam = (from team in nfl.Teams
                           where team.ID == visitorTeamId
                           select new Team {
                Id = team.ID, Location = team.Location, Name = team.Name, Colors = team.Colors
            }).FirstOrDefault();
            HomeTeam = (from team in nfl.Teams
                        where team.ID == homeTeamId
                        select new Team {
                Id = team.ID, Location = team.Location, Name = team.Name, Colors = team.Colors
            }).FirstOrDefault();
        }
        public ActionResult WeeklyMatchups(int LeagueId, int SeasonId, int Week)
        {
            // remove after complete
            if (Session["PlayerId"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            //SetColors();
            int playerId = Convert.ToInt32(Session["PlayerId"]);

            WeeklyMatchupsViewModel WeeklyMatchups = new WeeklyMatchupsViewModel();

            using (NFLLeagueEntities nfl = new NFLLeagueEntities())
            {
                var results       = nfl.GetLeagueSeasonWeekMatchups(LeagueId, SeasonId, Week).ToList();
                var selectedTeams = (from sel in nfl.PlayerSelections
                                     where sel.PlayerId == playerId && sel.LeagueId == LeagueId && sel.SeasonId == SeasonId
                                     select new SelectedTeam()
                {
                    Week = sel.Week, TeamId = (int)sel.SelectedTeamId
                }).ToList();

                List <PlayerWeekMatchupViewModel> matchups = new List <PlayerWeekMatchupViewModel>();
                foreach (var matchup in results)
                {
                    DateTime dateTime = new DateTime(matchup.Date.Year, matchup.Date.Month, matchup.Date.Day, matchup.Time.Hours, matchup.Time.Minutes, 0);
                    matchups.Add(new PlayerWeekMatchupViewModel(nfl, dateTime, matchup.VisitorTeamId, matchup.HomeTeamId));
                }

                WeeklyMatchups.Matchups      = matchups;
                WeeklyMatchups.SelectedTeams = selectedTeams;
                WeeklyMatchups.LeagueName    = nfl.Leagues.FirstOrDefault(l => l.ID == LeagueId).Name;
                WeeklyMatchups.Week          = Week;
                WeeklyMatchups.LeagueId      = LeagueId;
                WeeklyMatchups.SeasonId      = SeasonId;
            }
            return(View(WeeklyMatchups));
        }
Exemple #7
0
        // GET: Leagues
        public ActionResult Index()
        {
            // remove after complete
            if (Session["PlayerId"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            int playerId = Convert.ToInt32(Session["PlayerId"]);
            List <PlayerLeagueViewModel> Leagues = new List <PlayerLeagueViewModel>();

            using (NFLLeagueEntities nfl = new NFLLeagueEntities())
            {
                var nflLeagues = nfl.GetPlayerLeagues(playerId);
                foreach (var league in nflLeagues)
                {
                    Leagues.Add(new PlayerLeagueViewModel()
                    {
                        LeagueId = league.ID, LeagueName = league.Name, LeagueType = "NFL", FavoriteTeamColors = nfl.Players.Single(p => p.ID == playerId).FavoriteTeam.Single().Colors
                    });
                }
            }
            return(View(Leagues));
        }