mirror of
https://github.com/aljazceru/btcpayserver.git
synced 2025-12-17 05:54:26 +01:00
Fixed issue with users when disabling then setting admin
Concurrency issue; moved user update from controller to service
This commit is contained in:
committed by
Andrew Camilleri
parent
fcbe1dd8eb
commit
2ad2ce6c3b
@@ -109,12 +109,15 @@ namespace BTCPayServer.Controllers
|
||||
|
||||
if (viewModel.IsAdmin != wasAdmin)
|
||||
{
|
||||
if (viewModel.IsAdmin)
|
||||
await _UserManager.AddToRoleAsync(user, Roles.ServerAdmin);
|
||||
var success = await _userService.SetAdminUser(user.Id, viewModel.IsAdmin);
|
||||
if (success)
|
||||
{
|
||||
TempData[WellKnownTempData.SuccessMessage] = "User successfully updated";
|
||||
}
|
||||
else
|
||||
await _UserManager.RemoveFromRoleAsync(user, Roles.ServerAdmin);
|
||||
|
||||
TempData[WellKnownTempData.SuccessMessage] = "User successfully updated";
|
||||
{
|
||||
TempData[WellKnownTempData.ErrorMessage] = "Error updating user";
|
||||
}
|
||||
}
|
||||
|
||||
return RedirectToAction(nameof(User), new { userId = userId });
|
||||
|
||||
Reference in New Issue
Block a user