public async Task <ActionResult> UpdateSettings(AdminUserSettingsUpdateModel model) { if (!ModelState.IsValid) { return(View("UpdateSettingsModal", model)); } var result = await AdminUserWriter.UpdateSettings(User.Identity.GetUserId(), model); if (!ModelState.IsWriterResultValid(result)) { return(View("UpdateSettingsModal", model)); } //ChatHub.InvalidateUserCache(model.UserId); return(CloseModalSuccess(result.Message)); }
public async Task <IWriterResult> UpdateSettings(string adminUserId, AdminUserSettingsUpdateModel model) { using (var context = DataContextFactory.CreateContext()) { var settings = await context.UserSettings.FirstOrDefaultNoLockAsync(x => x.Id == model.Id); if (settings == null) { return(new WriterResult(false, $"User '{model.UserName}' not found")); } settings.HideZeroBalance = model.HideZeroBalance; settings.ShowFavoriteBalance = model.ShowFavoriteBalance; settings.Theme = model.Theme; await context.SaveChangesWithAuditAsync(adminUserId); return(new WriterResult(true, "Successfully updated user settings.")); } }