// subroutine of the http POST handler private IActionResult SaveCreatedOrEditedUser(string maintenanceMode, UsersViewModel uvm, string originalEmail) { User user = mapper.Map <User>(uvm); if (!ValidateUser(maintenanceMode, originalEmail, uvm, user)) { new ViewBagConfigurer().ConfigureViewBag(ViewBag, maintenanceMode); return(View("Maintenance", uvm)); } userService.AddOrReplaceUser(user, originalEmail); siteSecurityConfig.Refresh(); UpdateRouteData(user.EmailAddress); LogDebug(user.Name, maintenanceMode); return(RedirectToAction(nameof(Index))); // total success }
public IActionResult UpdateUser(UsersViewModel usersviewmodel) { usersviewmodel.Active = true; usersviewmodel.Ask = true; usersviewmodel.NotifyOnAllComment = true; usersviewmodel.NotifyOnNewPost = true; usersviewmodel.NotifyOnOwnComment = true; ModelState.Clear(); if (string.IsNullOrWhiteSpace(usersviewmodel.Password)) { ModelState.AddModelError("", "Invalid Password."); } if (string.IsNullOrWhiteSpace(usersviewmodel.DisplayName)) { ModelState.AddModelError("", "Invalid Display Name."); } if (string.IsNullOrWhiteSpace(usersviewmodel.EmailAddress)) { ModelState.AddModelError("", "Invalid Email Address."); } if (ModelState.ErrorCount > 0) { return(View("ViewEditUser", usersviewmodel)); } var dasbloguser = mapper.Map <User>(usersviewmodel); userService.AddOrReplaceUser(dasbloguser, usersviewmodel.OriginalEmail); siteSecurityConfig.Refresh(); var uvm = mapper.Map <UsersViewModel>(userService.GetFirstUser()); logger.LogInformation(new EventDataItem(EventCodes.EditUser, null, "Edit User: {0}", uvm.DisplayName)); return(Index()); }