// GET: Matches public ActionResult AllMatchesPartial(MatchesListRequest request) { var matches = this.matchesService.GetMatches().ToList(); var countries = this.countriesService.GetCountries().ToList(); var results = this.matchResultsService.GetResults().ToList(); var betResults = this.betResultsService.GetBetResults().ToList(); var matchesList = matches.Select(x => ToMatchViewModel(x, results, countries)) .Select(x => SetMatchBetResultsAlert(x, betResults)) .Select(x => { x.AllowToSave = x.PlayedOn < DateTime.UtcNow; return(x); }) .ToList(); if (request.ExcludeCompleted) { matchesList = matchesList.Where(x => !x.Completed).ToList(); } if (request.ExcludePending) { matchesList = matchesList.Where(x => x.Completed).ToList(); } if (request.MatchStage.HasValue) { matchesList = matchesList.Where(x => x.Stage.Equals(request.MatchStage.Value)).ToList(); } if (request.OrderByDescending) { matchesList = matchesList.OrderByDescending(x => x.PlayedOn).ToList(); } else { matchesList = matchesList.OrderBy(x => x.PlayedOn).ToList(); } if (request.Count > 0) { matchesList = matchesList.Take(request.Count).ToList(); } return(View("AllMatchesPartial", new MatchesListViewModel { Matches = matchesList, Request = request })); }
// GET: Matches public ActionResult MyMatchesPartial(MatchesListRequest request) { var matches = this.matchesService.GetMatches().ToList(); var countries = this.countriesService.GetCountries().ToList(); var bets = this.matchBetsService.GetUserBets(User.Identity.GetUserId()).ToList(); var matchesList = matches.Select(x => ToMatchViewModel(x, bets, countries)) .Select(x => SetCloseToPlayAlert(x)) .Select(x => { x.AllowToSave = x.PlayedOn > DateTime.UtcNow; return(x); }) .ToList(); if (request.ExcludeCompleted) { matchesList = matchesList.Where(x => !x.Completed).ToList(); } if (request.ExcludePending) { matchesList = matchesList.Where(x => x.Completed).ToList(); } if (request.OrderByDescending) { matchesList = matchesList.OrderByDescending(x => x.PlayedOn).ToList(); } else { matchesList = matchesList.OrderBy(x => x.PlayedOn).ToList(); } if (request.Count > 0) { matchesList = matchesList.Take(request.Count).ToList(); } return(View("AllMatchesPartial", new MatchesListViewModel { Matches = matchesList, Request = request })); }