@namespace Oqtane.Modules.Admin.Pages @inherits ModuleBase @inject NavigationManager NavigationManager @inject IPageService PageService @inject IThemeService ThemeService
Cancel

@code { public override SecurityAccessLevel SecurityAccessLevel { get { return SecurityAccessLevel.Admin; } } Dictionary themes = new Dictionary(); Dictionary panelayouts = new Dictionary(); int PageId; string name; string path; string parentid = ""; string isnavigation; string mode; string themetype; string layouttype; string icon; string permissions; string createdby; DateTime createdon; string modifiedby; DateTime modifiedon; string deletedby; DateTime? deletedon; protected override async Task OnInitializedAsync() { try { themes = ThemeService.GetThemeTypes(PageState.Themes); PageId = Int32.Parse(PageState.QueryString["id"]); Page page = PageState.Pages.Where(item => item.PageId == PageId).FirstOrDefault(); if (page != null) { name = page.Name; path = page.Path; isnavigation = page.IsNavigation.ToString(); mode = (page.EditMode) ? "edit" : "view"; themetype = page.ThemeType; panelayouts = ThemeService.GetPaneLayoutTypes(PageState.Themes, themetype); layouttype = page.LayoutType; icon = page.Icon; permissions = page.Permissions; createdby = page.CreatedBy; createdon = page.CreatedOn; modifiedby = page.ModifiedBy; modifiedon = page.ModifiedOn; deletedby = page.DeletedBy; deletedon = page.DeletedOn; } } catch (Exception ex) { await logger.LogError(ex, "Error Loading Page {PageId} {Error}", PageId, ex.Message); AddModuleMessage("Error Loading Page", MessageType.Error); } } private async Task DeletePage() { try { await PageService.DeletePageAsync(PageId); await logger.LogInformation("Page Deleted {PageId}", PageId); NavigationManager.NavigateTo(NavigateUrl("", Reload.Site)); // redirect to home page } catch (Exception ex) { await logger.LogError(ex, "Error Deleting Page {PageId} {Error}", PageId, ex.Message); AddModuleMessage("Error Deleting Page", MessageType.Error); } } }