public AjaxFormResult SaveBonus([BonusTaskBinder(Fetch = true)] BonusTask bonusTask) { var response = new AjaxFormResult(); try { if (ViewData.ModelState.IsValid && bonusTask.IsValid()) { if (bonusTask.Id == 0) { bonusTask.Game = User.Game; bonusTaskRepository.SaveOrUpdate(bonusTask); response.ExtraParams["newID"] = bonusTask.Id.ToString(); response.ExtraParams["name"] = bonusTask.Name; } response.Success = true; } else { response.Success = false; response.Errors.Add(new FieldError("BonusTask_ID", "The ID field is required")); taskRepository.DbContext.RollbackTransaction(); } } catch (Exception e) { response.Success = false; response.ExtraParams["msg"] = e.ToString(); } return(response); }
public ActionResult Create([BonusTaskBinder(Fetch = false)] BonusTask bonusTask) { if (ViewData.ModelState.IsValid && bonusTask.IsValid()) { bonusTask.Game = User.Game; bonusTaskRepository.SaveOrUpdate(bonusTask); TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] = "Бонусное задание успешно создано."; return(this.RedirectToAction <GamesController>(c => c.Edit(bonusTask.Game.Id))); } BonusTaskFormViewModel viewModel = BonusTaskFormViewModel.CreateBonusTaskFormViewModel(); viewModel.BonusTask = bonusTask; return(View(viewModel)); }
public ActionResult Edit([BonusTaskBinder(Fetch = true)] BonusTask bonusTask) { BonusTask bonusTaskToUpdate = bonusTaskRepository.Get(bonusTask.Id); TransferFormValuesTo(bonusTaskToUpdate, bonusTask); if (ViewData.ModelState.IsValid && bonusTask.IsValid()) { Message = "Бонусное задание успешно изменено."; return(this.RedirectToAction <GamesController>(c => c.Edit(bonusTaskToUpdate.Game.Id))); } else { bonusTaskRepository.DbContext.RollbackTransaction(); BonusTaskFormViewModel viewModel = BonusTaskFormViewModel.CreateBonusTaskFormViewModel(); viewModel.BonusTask = bonusTask; return(View(viewModel)); } }