public async Task <IActionResult> Enroll(string name) { var contests = await this.contestService.GetAllAsync(); ViewData["Contests"] = new SelectList(contests.Where(c => c.OpenOrInvitational == "Open"), "Name", "Name"); var contest = await this.contestService.FindContestByNameAsync(name); var enrolView = new ContetsViewModel(new ContestDTO(contest)); enrolView.Name = name; return(View(enrolView)); }
public async Task <IActionResult> GetByPhaseFiltered(ContetsViewModel contetsViewModel) { if (ModelState.IsValid) { try { var phase = contetsViewModel.Filter; var sortBy = contetsViewModel.SortBy; var orderBy = contetsViewModel.OrderBy; var contests = await this.contestService.GetByPhaseAsync(phase, sortBy, orderBy); return(View(contests.Select(c => new ContetsViewModel(c)))); } catch (Exception e) { toastNotification.AddErrorToastMessage(e.Message, new NotyOptions()); var path = Request.Path.Value.ToString(); return(Redirect(path)); } } return(RedirectToAction("Index")); }