Files
Aaru.Server/Aaru.Server.New/Components/Account/IdentityUserAccessor.cs

21 lines
732 B
C#

using Aaru.Server.New.Data;
using Microsoft.AspNetCore.Identity;
namespace Aaru.Server.New.Components.Account;
sealed class IdentityUserAccessor(UserManager<ApplicationUser> userManager, IdentityRedirectManager redirectManager)
{
public async Task<ApplicationUser> GetRequiredUserAsync(HttpContext context)
{
ApplicationUser? user = await userManager.GetUserAsync(context.User);
if(user is null)
{
redirectManager.RedirectToWithStatus("Account/InvalidUser",
$"Error: Unable to load user with ID '{userManager.GetUserId(context.User)}'.",
context);
}
return user;
}
}