public IActionResult Update(EnemyFormViewModel viewModel) { if (!ModelState.IsValid) { viewModel.EnemyTypeOptions = _htmlHelper.GetEnumSelectList <EnemyType>(); viewModel.EnemyElitenessesOptions = _htmlHelper.GetEnumSelectList <EnemyEliteness>(); return(View(viewModel)); } if (viewModel.IsUpdate) { var domain = _enemyManager.GetOne(viewModel.Enemy.Id); _mapper.Map(viewModel, domain); _enemyManager.Save(domain); } else { if (!NameLevelElitenessIsUnique(viewModel.Enemy)) { TempData["AlertMessage"] = "Name/Level/Eliteness combination is not unique."; viewModel.EnemyTypeOptions = _htmlHelper.GetEnumSelectList <EnemyType>(); viewModel.EnemyElitenessesOptions = _htmlHelper.GetEnumSelectList <EnemyEliteness>(); return(View(viewModel)); } _enemyManager.Add(viewModel.Enemy); } TempData["AlertMessage"] = viewModel.IsUpdate ? $"{viewModel.Enemy.Name} updated!" : $"{viewModel.Enemy.Name} added!"; return(RedirectToAction("FullIndex")); }
public IActionResult Delete(EnemyFormViewModel viewModel) { var domain = _enemyManager.GetOne(viewModel.Id); if (domain is null) { return(View("NotFound")); } _enemyManager.Delete(domain); TempData["AlertMessage"] = $"{domain.Name} Deleted!"; return(RedirectToAction("FullIndex")); }
public IActionResult Update(int id = -1) { EnemyFormViewModel model; if (id < 0) // creating new { model = new EnemyFormViewModel { Id = id }; } else // updating existing { var domain = _enemyManager.GetOne(id); model = _mapper.Map <EnemyFormViewModel>(domain); } model.EnemyTypeOptions = _htmlHelper.GetEnumSelectList <EnemyType>(); model.EnemyElitenessesOptions = _htmlHelper.GetEnumSelectList <EnemyEliteness>(); return(View(model)); }