Files
magman/MagMan.UI/Shared/MainLayout.razor
T
Samuele Locatelli 81ebf28c34 Ok login!
2024-01-11 10:39:57 +01:00

73 lines
1.6 KiB
Plaintext

@inherits LayoutComponentBase
@using MagMan.UI.Components
@inject MessageService MessageService
@implements IDisposable
<PageTitle>MagMan UI</PageTitle>
<div class="page">
<div class="@sideClass">
<NavMenu />
</div>
<div class="main mr-1 w-100">
<CascadingValue Name="ShowSearch" Value=@ShowSearch>
<div class="top-row">
<CmpTop></CmpTop>
</div>
</CascadingValue>
@* <article class="content px-4"> *@
<article class="content pt-1 pt-lg-2 mb-5 px-0 px-lg-2">
@Body
</article>
<div class="fixed-bottom bottom-row">
<CmpFooter></CmpFooter>
</div>
</div>
</div>
@code {
bool ShowSearch { get; set; } = false;
protected override void OnInitialized()
{
MessageService.EA_ShowSearch += OnShowSearch;
MessageService.EA_HideSearch += OnHideSearch;
}
public void OnShowSearch()
{
ShowSearch = true;
InvokeAsync(() =>
{
StateHasChanged();
});
}
public void OnHideSearch()
{
ShowSearch = false;
InvokeAsync(() =>
{
StateHasChanged();
});
}
public void Dispose()
{
MessageService.EA_ShowSearch -= OnShowSearch;
MessageService.EA_ShowSearch -= OnHideSearch;
}
protected bool navLarge { get; set; } = true;
protected string sideClass { get; set; } = "sidebar";
protected void UpdateNavDisplay()
{
navLarge = !navLarge;
sideClass = navLarge ? "sidebar" : "sidebarSmall";
}
}