public ActionResult ListEligibleKeepers(string teamKey) { var teamPlayers = this.Fantasizer.GetTeamPlayerStats(teamKey); var draftResults = this.Fantasizer.GetDraftResults(teamPlayers.Team.LeagueKey); // TODO: This block is mostly duplicated with the LeagueController's DownloadEligibleKeepers action. LeagueDao leagueData; using (var session = _sessionFactory.OpenSession()) { leagueData = session.Get<LeagueDao>(draftResults.League.Key); if (leagueData == null || !leagueData.AllowKeepersFromPriorSeason.HasValue) { TempData["UserAlertMessage"] = "You must specify your league's keeper settings before proceeding."; return RedirectToAction("ViewKeeperSettings", "League", new { leagueKey = draftResults.League.Key}); } } var keeperAnalyzer = new KeeperAnalyzer(teamPlayers, draftResults, leagueData.AllowKeepersFromPriorSeason.Value); var keepers = keeperAnalyzer.GetEligibleKeepersForTeam(teamKey); var sortedKeepers = keepers.OrderBy(k => k.DraftRound); var model = new EligibleKeeperModel() { Team = teamPlayers.Team, EligibleKeepers = sortedKeepers }; return View(model); }
public ActionResult DownloadEligibleKeepers(string leagueKey) { var leagueTeamPlayers = this.Fantasizer.GetLeagueTeamPlayers(leagueKey); var draftResults = this.Fantasizer.GetDraftResults(leagueKey); // TODO: This block is mostly duplicated with the TeamController's ListEligibleKeepers action. LeagueDao leagueData; using (var session = _sessionFactory.OpenSession()) { leagueData = session.Get<LeagueDao>(draftResults.League.Key); if (leagueData == null || !leagueData.AllowKeepersFromPriorSeason.HasValue) { TempData["UserAlertMessage"] = "You must specify your league's keeper settings before proceeding."; return RedirectToAction("ViewKeeperSettings", "League", new { leagueKey = draftResults.League.Key }); } } var keepers = new KeeperAnalyzer(leagueTeamPlayers, draftResults, leagueData.AllowKeepersFromPriorSeason.Value); var writer = new EligibleKeeperWriter(keepers.GetEligibleKeepersForLeague(leagueKey)); return File(writer.ToCsvArray(), "text/csv", "eligible-keepers.csv"); }