Files
jsmr/JSMR.UI.Blazor/Components/Authentication/RequireAuthentication.razor
Brian Bicknell 9f30ef446a
Some checks failed
ci / build-test (push) Has been cancelled
ci / publish-image (push) Has been cancelled
Added authenication/authorization. Refactored api startup.
2026-02-16 00:20:02 -05:00

35 lines
666 B
Plaintext

@using JSMR.UI.Blazor.Services
@inject SessionState Session
@inject NavigationManager Nav
@if (!ready)
{
<p>Loading...</p>
}
else if (!Session.IsAuthenticated)
{
<!-- nothing shown, we redirect -->
}
else
{
@ChildContent
}
@code {
[Parameter] public RenderFragment? ChildContent { get; set; }
private bool ready;
protected override async Task OnInitializedAsync()
{
await Session.RefreshAsync();
ready = true;
if (!Session.IsAuthenticated)
{
var returnUrl = Uri.EscapeDataString(Nav.Uri);
Nav.NavigateTo($"/login?returnUrl={returnUrl}", forceLoad: false);
}
}
}