LANCommander/LANCommander.Server/UI/Pages/Files.razor

39 lines
1.2 KiB
Text
Raw Permalink Normal View History

@page "/Files"
@using Microsoft.AspNetCore.Components.Server.ProtectedBrowserStorage
@attribute [Authorize(Roles = RoleService.AdministratorRoleName)]
@inject ProtectedLocalStorage BrowserStorage
2023-09-09 17:36:20 -05:00
<FileManager WorkingDirectory="@RootPath" ColumnVisibility="ColumnVisibility" ColumnVisibilityChanged="OnColumnVisibilityChanged" />
2023-09-09 17:36:20 -05:00
@code {
2023-09-11 19:33:07 -05:00
string RootPath = Path.GetPathRoot(Directory.GetCurrentDirectory());
Dictionary<string, bool> ColumnVisibility;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
try
{
var stored = await BrowserStorage.GetAsync<Dictionary<string, bool>>("FileManager.ColumnVisibility");
if (stored.Success && stored.Value != null)
{
ColumnVisibility = stored.Value;
StateHasChanged();
}
}
catch
{
ColumnVisibility = new Dictionary<string, bool>();
}
}
}
async Task OnColumnVisibilityChanged(Dictionary<string, bool> visibility)
{
ColumnVisibility = visibility;
await BrowserStorage.SetAsync("FileManager.ColumnVisibility", visibility);
}
2023-09-09 17:36:20 -05:00
}