public async Task <bool> SaveInDatabase(vm.GeneralSettingsForm info) { if (!ModelState.IsValid(info)) { Notify(ModelState.GetErrors().ToLinesString(), "error"); return(false); } var item = info.Item.Clone(); await info.CopyDataTo(item); // Read the ViewModel data into the domain object. using (var scope = Database.CreateTransactionScope()) { try { info.Item = await Database.Save(item); scope.Complete(); return(true); } catch (Olive.Entities.ValidationException ex) { Notify(ex.ToFullMessage(), "error"); } return(false); } }
public async Task OnBound(vm.GeneralSettingsForm info) { info.Item = Domain.Settings.Current; if (Request.IsGet()) { await info.Item.CopyDataTo(info); } }
public async Task <ActionResult> Save(vm.GeneralSettingsForm info) { try { if (!await SaveInDatabase(info)) { return(JsonActions(info)); } } catch (Olive.Entities.ValidationException ex) { return(Notify(ex.Message, "error")); } Notify("Updated", obstruct: false); return(JsonActions(info)); }
public async Task <ActionResult> Index(vm.GeneralSettingsForm info) { ModelState.Clear(); // Remove initial validation messages return(View(info)); }