aboutsummaryrefslogtreecommitdiffstats
path: root/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-11-14 05:04:36 +0100
committerivarlovlie <git@ivarlovlie.no>2022-11-14 05:05:09 +0100
commit04a2b73805fc1213df42ef9af4cdcf27ff7c86db (patch)
tree818df6112e2b74ce3af6f2d9ce7535915967feed /code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
parent94da43fd4e2c625babcf7cdabc5e82a47bcab2a5 (diff)
downloadgreatoffice-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/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs')
-rw-r--r--code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs22
1 files changed, 6 insertions, 16 deletions
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