@namespace Oqtane.Modules.Admin.Pages @inherits ModuleBase @inject NavigationManager NavigationManager @inject IPageService PageService @inject IStringLocalizer Localizer @inject IStringLocalizer SharedLocalizer @if (_pages != null && UserSecurity.IsAuthorized(PageState.User, RoleNames.Admin)) {
      @SharedLocalizer["Name"]
@(new string('-', context.Level * 2))@(context.Name)
} @code { public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; private List _pages; protected override async Task OnInitializedAsync() { try { _pages = await PageService.GetPagesAsync(PageState.Site.SiteId); } catch (Exception ex) { await logger.LogError(ex, "Error Loading Pages {Error}", ex.Message); AddModuleMessage(Localizer["Error.Page.Load"], MessageType.Error); } } private async Task DeletePage(Page page) { try { page.IsDeleted = true; await PageService.UpdatePageAsync(page); await logger.LogInformation("Page Deleted {Page}", page); NavigationManager.NavigateTo(NavigateUrl("admin/pages")); } catch (Exception ex) { await logger.LogError(ex, "Error Deleting Page {Page} {Error}", page, ex.Message); AddModuleMessage(Localizer["Error.Page.Delete"], MessageType.Error); } } protected string Browse(Page page) { return string.IsNullOrEmpty(page.Url) ? NavigateUrl(page.Path) : page.Url; } }