private Domain.ApplicationUser AdminVMToApplicationUser(AdminParticipantCreateEditViewModel vm) { if (string.IsNullOrWhiteSpace(vm.ID)) { return(new Domain.ApplicationUser { AddedWhen = DateTime.UtcNow, Active = vm.Login.Active, Forename = vm.Login.Forename, Surname = vm.Login.Surname, UserName = vm.Name, Email = vm.Login.Email }); } else { var existingUser = participantsProcessor.GetAdminById(vm.ID).ApplicationUser; existingUser.Active = vm.Login.Active; existingUser.Forename = vm.Login.Forename; existingUser.Surname = vm.Login.Surname; existingUser.UserName = vm.Name; existingUser.Email = vm.Login.Email; return(existingUser); } }
public ActionResult EditAdmin(string id) { if (string.IsNullOrWhiteSpace(id)) { return(new HttpNotFoundResult()); } var admin = participantsProcessor.GetAdminById(id); if (admin == null) { return(new HttpNotFoundResult()); } var vm = new AdminParticipantCreateEditViewModel { Login = AdminToLoginVM(admin) }; PopulateAdminRoles(); return(PartialView("_CreateEditAdmin", vm)); }
public async Task <ActionResult> CreateAdmin(AdminParticipantCreateEditViewModel vm) { var success = ModelState.IsValid; var message = string.Empty; try { if (success) { (success, message) = await participantsProcessor.CreateAdmin(AdminVMToApplicationUser(vm), AbsoluteResetPasswordUrl); } else { message = string.Join("<br/>", GetModelStateErrorMessages()); } } catch (Exception e) { success = false; message = $"Error creating admin user: {e.Message}"; } return(Json(new { success, message })); }