public ActionResult Edit(Guid id, OutcomeViewModel model)
{
var outcomeToEdit = RepositoryFactory.OutcomeRepository.GetNullableById(id);
if (outcomeToEdit == null)
{
return(RedirectToAction("Index"));
}
outcomeToEdit.Name = model.Name;
if (ModelState.IsValid)
{
if (model.File != null) //replace file if we have a new one
{
var badgeImage = _fileService.Save(model.File, publicAccess: true);
outcomeToEdit.ImageUrl = badgeImage.Uri.AbsoluteUri;
}
RepositoryFactory.OutcomeRepository.EnsurePersistent(outcomeToEdit);
Message = "Outcome Edited Successfully";
return(RedirectToAction("Index"));
}
else
{
var viewModel = OutcomeViewModel.Create(Repository);
viewModel.Name = model.Name;
viewModel.Name = model.Description;
return(View(viewModel));
}
}