Fix shared header bindings and unify admin navigation menu

This commit is contained in:
2026-02-26 18:11:52 +01:00
parent a56b3fc451
commit c41aabc0a8
2 changed files with 16 additions and 5 deletions

View File

@@ -46,9 +46,17 @@ public partial class AdminHome
}
}
private async Task OpenWorkspaceAsync()
private async Task OpenPlayAsync()
{
IsScreenMenuOpen = false;
await JS.InvokeVoidAsync("rpgRollerApi.setSessionValue", ScreenSessionKey, "play");
await WorkspaceRequested.InvokeAsync();
}
private async Task OpenCampaignManagementAsync()
{
IsScreenMenuOpen = false;
await JS.InvokeVoidAsync("rpgRollerApi.setSessionValue", ScreenSessionKey, "management");
await WorkspaceRequested.InvokeAsync();
}
@@ -180,12 +188,15 @@ public partial class AdminHome
{
return
[
new AppHeaderMenuItem { Label = "Workspace", IsActive = false, OnSelected = OpenWorkspaceAsync },
new AppHeaderMenuItem { Label = "Play", IsActive = false, OnSelected = OpenPlayAsync },
new AppHeaderMenuItem { Label = "Campaign Management", IsActive = false, OnSelected = OpenCampaignManagementAsync },
new AppHeaderMenuItem { Label = "Admin", IsActive = true, OnSelected = OpenAdminAsync }
];
}
}
private const string ScreenSessionKey = "screen";
[Parameter]
public EventCallback<string?> LoggedOut { get; set; }

View File

@@ -17,10 +17,10 @@
<AppHeader
User="User"
ShowCampaign="true"
CampaignName="SelectedCampaignName"
CampaignName="@SelectedCampaignName"
ShowConnectionState="true"
ConnectionStateLabel="ConnectionStateLabel"
ConnectionStateCssClass="ConnectionStateCssClass"
ConnectionStateLabel="@ConnectionStateLabel"
ConnectionStateCssClass="@ConnectionStateCssClass"
IsMenuOpen="IsScreenMenuOpen"
MenuButtonId="workspace-screen-menu-button"
MenuId="workspace-screen-menu"