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 })); }
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)); }
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)); }
// 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)); }
// 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)); }