public async Task <int> CreatePassword(CreatePasswordRequest request) { var body = Json.ToString(request); var response = await http.Post("api/v4/passwords.json", body); var created = Json.ToObject <Created>(response); return(Int32.Parse(created.Id)); }
public async Task <IActionResult> CreatePassword(CreatePasswordRequest createPassword) { if (!ModelState.IsValid) { return(RedirectToAction(nameof(Index))); } Result result = await _credentialsService.CreatePassword(createPassword); if (result.Failure) { SaveTempData(STATUS_ALERT_TEMP_DATA_KEY, StatusAlertViewExtension.Get(result)); } else { SaveTempData(STATUS_ALERT_TEMP_DATA_KEY, StatusAlertViewExtension.Get("Password was created")); } return(RedirectToAction(nameof(Index))); }
public async Task <Result> CreatePassword(CreatePasswordRequest createPasswordRequest) { ValidationResult validationResult = _createPasswordValidator.Validate(createPasswordRequest); if (!validationResult.IsValid) { _logger.LogWarning($"Invalid {nameof(CreatePasswordRequest)} model"); return(Result.Fail(validationResult.Errors)); } string userId = _httpContextAccessor.HttpContext.User.GetUserId(); AppUserEntity appUser = await _userManager.FindByIdAsync(userId); if (appUser == null) { _logger.LogError($"No User. UserId {userId}"); return(Result.Fail("no_user", "No User")); } _logger.LogTrace($"Creating password. UserId {userId}"); IdentityResult identityResult = await _userManager.AddPasswordAsync(appUser, createPasswordRequest.NewPassword); if (!identityResult.Succeeded) { _logger.LogError($"Failed to add password. UserId {userId}"); return(Result.Fail(identityResult.Errors)); } Result loginResult = await _loginService.Login(userId); if (loginResult.Failure) { _logger.LogError($"Failed to log in user after password was added. UserId {userId}"); } return(Result.Ok()); }
public override async Task <ProfileReply> CreatePassword(CreatePasswordRequest request, ServerCallContext context) { var command = new CreatePasswordCommand( request.Id.ToAccountId(), new ObjectId(request.Confirm.Id), request.Confirm.Code, request.Password ); await _mediator.Send(command, context.CancellationToken); var data = await _mediator.Send(new GetAccountByIdQuery(request.Id.ToAccountId())); if (data is not null) { return(data.ToGatewayProfileReply()); } context.Status = new Status(StatusCode.NotFound, ElwarkExceptionCodes.AccountNotFound); return(new ProfileReply()); }