Some changes to get register/login flow working smoothly with Admin role.
This commit is contained in:
parent
259b954f26
commit
bb276a5984
6 changed files with 26 additions and 21 deletions
|
|
@ -37,7 +37,6 @@ namespace API.Controllers
|
|||
[HttpPost("register")]
|
||||
public async Task<ActionResult<UserDto>> Register(RegisterDto registerDto)
|
||||
{
|
||||
_logger.LogInformation("Username: " + registerDto.Password);
|
||||
if (await UserExists(registerDto.Username))
|
||||
{
|
||||
return BadRequest("Username is taken.");
|
||||
|
|
@ -48,16 +47,18 @@ namespace API.Controllers
|
|||
var result = await _userManager.CreateAsync(user, registerDto.Password);
|
||||
|
||||
if (!result.Succeeded) return BadRequest(result.Errors);
|
||||
|
||||
|
||||
var roleResult = await _userManager.AddToRoleAsync(user, "Pleb");
|
||||
// TODO: Need a way to store Roles in enum and configure from there
|
||||
var role = registerDto.IsAdmin ? "Admin" : "Pleb";
|
||||
var roleResult = await _userManager.AddToRoleAsync(user, role);
|
||||
|
||||
if (!roleResult.Succeeded) return BadRequest(result.Errors);
|
||||
|
||||
return new UserDto()
|
||||
return new UserDto
|
||||
{
|
||||
Username = user.UserName,
|
||||
Token = await _tokenService.CreateToken(user),
|
||||
IsAdmin = user.IsAdmin
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -79,11 +80,10 @@ namespace API.Controllers
|
|||
_userRepository.Update(user);
|
||||
await _userRepository.SaveAllAsync();
|
||||
|
||||
return new UserDto()
|
||||
return new UserDto
|
||||
{
|
||||
Username = user.UserName,
|
||||
Token = await _tokenService.CreateToken(user),
|
||||
IsAdmin = user.IsAdmin
|
||||
Token = await _tokenService.CreateToken(user)
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue