Only checks if the username or email is changed

This commit is contained in:
Jeas0001 2025-05-05 13:04:50 +02:00
parent b0bb534eff
commit f84cd6167b

View File

@ -94,6 +94,8 @@ namespace API.BusinessLogic
public async Task<IActionResult> EditProfile(UpdateUserDTO userDTO, int userId) public async Task<IActionResult> EditProfile(UpdateUserDTO userDTO, int userId)
{ {
var profile = await _dbAccess.ReadUser(userId); var profile = await _dbAccess.ReadUser(userId);
bool emailChanged = false;
bool userNameChanged = false;
if (profile == null) { return new ConflictObjectResult(new { message = "User does not exist" }); } if (profile == null) { return new ConflictObjectResult(new { message = "User does not exist" }); }
@ -112,13 +114,22 @@ namespace API.BusinessLogic
return new ConflictObjectResult(new { message = "Please enter an userName" }); return new ConflictObjectResult(new { message = "Please enter an userName" });
} }
if (userDTO.UserName != profile.UserName)
{
userNameChanged = true;
}
if (await _dbAccess.UserNameInUse(userDTO.UserName)) if (userDTO.Email != profile.Email)
{
emailChanged = true;
}
if (await _dbAccess.UserNameInUse(userDTO.UserName) && userNameChanged)
{ {
return new ConflictObjectResult(new { message = "Username is already in use." }); return new ConflictObjectResult(new { message = "Username is already in use." });
} }
if (await _dbAccess.EmailInUse(userDTO.Email)) if (await _dbAccess.EmailInUse(userDTO.Email) && emailChanged)
{ {
return new ConflictObjectResult(new { message = "Email is already in use." }); return new ConflictObjectResult(new { message = "Email is already in use." });
} }