diff options
| author | ivar <i@oiee.no> | 2024-03-19 01:02:22 +0100 |
|---|---|---|
| committer | ivar <i@oiee.no> | 2024-03-19 01:02:22 +0100 |
| commit | 5f604b3052dab1d51dc130df2470bf330b283ec6 (patch) | |
| tree | ae00e1fe4542850467555b4e3af41964ba8d878b /code/api/Endpoints/Account/LoginEndpoint.cs | |
| parent | 63cf177e8cf22e349534664d59a6926f8b36863d (diff) | |
| download | storage-5f604b3052dab1d51dc130df2470bf330b283ec6.tar.xz storage-5f604b3052dab1d51dc130df2470bf330b283ec6.zip | |
Max lenghts on db schema
Use latest temporal from cdn
Implement majority of translation functionality
Major refinements/bugs
Diffstat (limited to 'code/api/Endpoints/Account/LoginEndpoint.cs')
| -rw-r--r-- | code/api/Endpoints/Account/LoginEndpoint.cs | 52 |
1 files changed, 21 insertions, 31 deletions
diff --git a/code/api/Endpoints/Account/LoginEndpoint.cs b/code/api/Endpoints/Account/LoginEndpoint.cs index 4f8e434..6cda119 100644 --- a/code/api/Endpoints/Account/LoginEndpoint.cs +++ b/code/api/Endpoints/Account/LoginEndpoint.cs @@ -1,36 +1,26 @@ -namespace I2R.Storage.Api.Endpoints.Account; +namespace Quality.Storage.Api.Endpoints.Account; -public class LoginEndpoint : EndpointBase +public class LoginEndpoint(UserService userService, AppDatabase database, IStringLocalizer<SharedResources> localizer) : EndpointBase { - private readonly AppDatabase _database; - private readonly UserService _userService; - private readonly IStringLocalizer<SharedResources> _localizer; + public new class Request + { + public string Username { get; set; } + public string Password { get; set; } + } - public new class Request - { - public string Username { get; set; } - public string Password { get; set; } - } + [AllowAnonymous] + [HttpPost("~/account/login")] + public async Task<ActionResult> Handle([FromBody] Request request) { + var user = database.Users.FirstOrDefault(c => c.Username == request.Username); + if (user == default) { + return KnownProblem(localizer["Invalid username or password"]); + } - public LoginEndpoint(UserService userService, AppDatabase database, IStringLocalizer<SharedResources> localizer) { - _userService = userService; - _database = database; - _localizer = localizer; - } + if (!PasswordHelper.Verify(request.Password, user.Password)) { + return KnownProblem(localizer["Invalid username or password"]); + } - [AllowAnonymous] - [HttpPost("~/account/login")] - public async Task<ActionResult> Handle([FromBody] Request request) { - var user = _database.Users.FirstOrDefault(c => c.Username == request.Username); - if (user == default) { - return KnownProblem(_localizer["Invalid username or password"]); - } - - if (!PasswordHelper.Verify(request.Password, user.Password)) { - return KnownProblem(_localizer["Invalid username or password"]); - } - - await _userService.LogInUserAsync(HttpContext, user.DefaultClaims()); - return Ok(); - } -}
\ No newline at end of file + await userService.LogInUserAsync(HttpContext, user.DefaultClaims()); + return Ok(); + } +} |
