public virtual ActionResult Search(PlayedGamesFilterViewModel filter, ApplicationUser currentUser) { var playedGameFilter = new PlayedGameFilter { EndDateGameLastUpdated = filter.DatePlayedEnd == null ? null : filter.DatePlayedEnd.Value.ToString("yyyy-MM-dd"), GamingGroupId = currentUser.CurrentGamingGroupId, StartDateGameLastUpdated = filter.DatePlayedStart == null ? null : filter.DatePlayedStart.Value.ToString("yyyy-MM-dd"), GameDefinitionId = filter.GameDefinitionId }; var searchResults = _playedGameRetriever.SearchPlayedGames(playedGameFilter); var playedGamesDetails = searchResults.Select(searchResult => new PlayedGameDetailsViewModel { DatePlayed = searchResult.DatePlayed, GameDefinitionId = searchResult.GameDefinitionId, GameDefinitionName = searchResult.GameDefinitionName, GamingGroupId = searchResult.GamingGroupId, GamingGroupName = searchResult.GamingGroupName, Notes = searchResult.Notes, PlayedGameId = searchResult.PlayedGameId, UserCanEdit = true, WinnerType = searchResult.WinnerType, PlayerResults = searchResult.PlayerGameResults.Select(playerResult => new GameResultViewModel { DatePlayed = searchResult.DatePlayed, GameDefinitionId = searchResult.GameDefinitionId, GameDefinitionName = searchResult.GameDefinitionName, GameRank = playerResult.GameRank, NemePointsSummary = new NemePointsSummaryViewModel(playerResult.NemeStatsPointsAwarded, playerResult.GameDurationBonusNemePoints, playerResult.GameWeightBonusNemePoints), PlayedGameId = searchResult.PlayedGameId, PlayerId = playerResult.PlayerId, PlayerName = playerResult.PlayerName, PointsScored = playerResult.PointsScored, WinnerType = searchResult.WinnerType }).ToList() }).ToList(); var viewModel = new SearchViewModel { Filter = { DatePlayedEnd = filter.DatePlayedEnd, DatePlayedStart = filter.DatePlayedStart, GameDefinitionId = filter.GameDefinitionId }, GameDefinitions = GetAllGameDefinitionsForCurrentGamingGroup(currentUser.CurrentGamingGroupId), PlayedGames = new PlayedGamesViewModel { PlayedGameDetailsViewModels = playedGamesDetails, UserCanEdit = true, GamingGroupId = currentUser.CurrentGamingGroupId, ShowSearchLinkInResultsHeader = false } }; return View(MVC.PlayedGame.Views.Search, viewModel); }
public virtual ActionResult Search(ApplicationUser currentUser) { var viewModel = new SearchViewModel { GameDefinitions = GetAllGameDefinitionsForCurrentGamingGroup(currentUser.CurrentGamingGroupId) }; return View(MVC.PlayedGame.Views.Search, viewModel); }