aboutsummaryrefslogtreecommitdiffstats
path: root/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-11-17 07:46:38 +0100
committerivarlovlie <git@ivarlovlie.no>2022-11-17 07:46:38 +0100
commit971a70d15e5531b59afd74556dc50214deeeafe9 (patch)
tree67210f7bf53dcbe5b17bf62c7837dca1cd88907c /code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
parent18b8d910b3dfa1e5c2a39b401b007b5e1ab8dea5 (diff)
downloadgreatoffice-971a70d15e5531b59afd74556dc50214deeeafe9.tar.xz
greatoffice-971a70d15e5531b59afd74556dc50214deeeafe9.zip
feat: Update known problem model
Diffstat (limited to 'code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs')
-rw-r--r--code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs13
1 files changed, 12 insertions, 1 deletions
diff --git a/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs b/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
index c831470..8c7ce03 100644
--- a/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
+++ b/code/api/src/Endpoints/Internal/PasswordResetRequests/FulfillResetRequestRoute.cs
@@ -1,11 +1,15 @@
+using Microsoft.Extensions.Localization;
+
namespace IOL.GreatOffice.Api.Endpoints.Internal.PasswordResetRequests;
public class FulfillResetRequestRoute : RouteBaseAsync.WithRequest<FulfillResetRequestRoute.Payload>.WithActionResult
{
+ private readonly IStringLocalizer<SharedResources> _localizer;
private readonly PasswordResetService _passwordResetService;
- public FulfillResetRequestRoute(PasswordResetService passwordResetService) {
+ public FulfillResetRequestRoute(PasswordResetService passwordResetService, IStringLocalizer<SharedResources> localizer) {
_passwordResetService = passwordResetService;
+ _localizer = localizer;
}
public class Payload
@@ -17,6 +21,13 @@ public class FulfillResetRequestRoute : RouteBaseAsync.WithRequest<FulfillResetR
[AllowAnonymous]
[HttpPost("~/_/password-reset-request/fulfill")]
public override async Task<ActionResult> HandleAsync(Payload request, CancellationToken cancellationToken = default) {
+ if (request.NewPassword.Length < 6) {
+ return KnownProblem(_localizer["Invalid form"],
+ _localizer["One or more fields is invalid"],
+ new() {{"newPassword", new string[] {_localizer["The new password needs to be atleast 6 characters"]}}}
+ );
+ }
+
return await _passwordResetService.FulfillRequestAsync(request.Id, request.NewPassword, cancellationToken) switch {
FulfillPasswordResetRequestResult.REQUEST_NOT_FOUND => NotFound(),
FulfillPasswordResetRequestResult.USER_NOT_FOUND => NotFound(),