public async Task <IActionResult> CreateSeries(CreateNewSeriesViewModel model) { if (ModelState.IsValid) { var cube = await _cubeService.GetCubeAsync(model.SelectedCubeId); var option = await _categoryService.GetSingleCategoryOptionAsync(model.CategoryOptionId); var result = await _seriesService.CheckIfSerieCanBeCreatedAsync(model.UserIdentity, cube, option); if (result.IsFaulted) { foreach (var error in result.Messages) { ModelState.AddModelError("", error); } } else { return(RedirectToAction("Series", "Timer", new { userId = model.UserIdentity, serieId = model.SeriesId, cubeId = model.SelectedCubeId, categoryOptionId = model.CategoryOptionId })); } } model.AvailableCategories = (await _cubeCollectionsService.GetAllCubesOfUserAsync(model.UserIdentity)) .Select(c => c.Category) .Distinct() .OrderBy(c => c.Name) .ToList(); return(await Task.FromResult(View(model))); }
public async Task <IActionResult> CreateSeries(string userName) { var user = await _userManager.FindByNameAsync(userName); if (user != null) { var model = new CreateNewSeriesViewModel() { UserIdentity = user.Id, SeriesId = 0, SelectedCubeId = 0, CategoryOptionId = 0, AvailableCategories = (await _cubeCollectionsService.GetAllCubesOfUserAsync(user.Id)) .Select(c => c.Category) .Distinct() .OrderBy(c => c.Name) .ToList(), }; return(View(model)); } else { return(RedirectToAction("Index", "Home")); } }