diff options
| author | ivarlovlie <git@ivarlovlie.no> | 2022-11-14 05:04:36 +0100 |
|---|---|---|
| committer | ivarlovlie <git@ivarlovlie.no> | 2022-11-14 05:05:09 +0100 |
| commit | 04a2b73805fc1213df42ef9af4cdcf27ff7c86db (patch) | |
| tree | 818df6112e2b74ce3af6f2d9ce7535915967feed /code/api/src/Endpoints | |
| parent | 94da43fd4e2c625babcf7cdabc5e82a47bcab2a5 (diff) | |
| download | greatoffice-04a2b73805fc1213df42ef9af4cdcf27ff7c86db.tar.xz greatoffice-04a2b73805fc1213df42ef9af4cdcf27ff7c86db.zip | |
refactor: Password reset service
- Use FulfillPasswordResetRequestResult to indicate fulfillment result
- Rename db names forgot_password_requests > password_reset_requests
Diffstat (limited to 'code/api/src/Endpoints')
| -rw-r--r-- | code/api/src/Endpoints/Internal/Account/DeleteAccountRoute.cs | 4 | ||||
| -rw-r--r-- | code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs | 22 |
2 files changed, 8 insertions, 18 deletions
diff --git a/code/api/src/Endpoints/Internal/Account/DeleteAccountRoute.cs b/code/api/src/Endpoints/Internal/Account/DeleteAccountRoute.cs index e5bbb10..f0e8362 100644 --- a/code/api/src/Endpoints/Internal/Account/DeleteAccountRoute.cs +++ b/code/api/src/Endpoints/Internal/Account/DeleteAccountRoute.cs @@ -28,9 +28,9 @@ public class DeleteAccountRoute : RouteBaseAsync.WithoutRequest.WithActionResult return Ok(); } - var passwordResets = _database.ForgotPasswordRequests.Where(c => c.UserId == user.Id); + var passwordResets = _database.PasswordResetRequests.Where(c => c.UserId == user.Id); - _database.ForgotPasswordRequests.RemoveRange(passwordResets); + _database.PasswordResetRequests.RemoveRange(passwordResets); _database.Users.Remove(user); await _database.SaveChangesAsync(cancellationToken); diff --git a/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs b/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs index 6f71b2f..5749242 100644 --- a/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs +++ b/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs @@ -8,24 +8,14 @@ public class FulfillResetRequestRoute : RouteBaseAsync.WithRequest<FulfillResetR _passwordResetService = passwordResetService; } - /// <summary> - /// Fulfill a password reset request. - /// </summary> - /// <param name="request"></param> - /// <param name="cancellationToken"></param> - /// <returns></returns> [AllowAnonymous] [HttpPost("~/_/password-reset-request/fulfill")] public override async Task<ActionResult> HandleAsync(FulfillResetRequestPayload request, CancellationToken cancellationToken = default) { - try { - var fulfilled = await _passwordResetService.FullFillRequestAsync(request.Id, request.NewPassword, cancellationToken); - return Ok(fulfilled); - } catch (Exception e) { - if (e is ForgotPasswordRequestNotFoundException or UserNotFoundException) { - return NotFound(); - } - - throw; - } + return await _passwordResetService.FulfillRequestAsync(request.Id, request.NewPassword, cancellationToken) switch { + FulfillPasswordResetRequestResult.REQUEST_NOT_FOUND => NotFound(), + FulfillPasswordResetRequestResult.USER_NOT_FOUND => NotFound(), + FulfillPasswordResetRequestResult.FULFILLED => Ok(), + _ => StatusCode(500) + }; } }
\ No newline at end of file |
