Merge pull request #2781 from sbwalker/dev

add defensive logic in case list of pages is empty
This commit is contained in:
Shaun Walker 2023-05-03 12:32:44 -04:00 committed by GitHub
commit 89da4ab2a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,20 +4,23 @@
@inject IUserService UserService @inject IUserService UserService
@inject IStringLocalizer<SharedResources> SharedLocalizer @inject IStringLocalizer<SharedResources> SharedLocalizer
<div class="row"> @if (_pages != null)
@foreach (var p in _pages) {
{ <div class="row">
if (UserSecurity.IsAuthorized(PageState.User, PermissionNames.View, p.PermissionList)) @foreach (var p in _pages)
{ {
string url = NavigateUrl(p.Path); if (UserSecurity.IsAuthorized(PageState.User, PermissionNames.View, p.PermissionList))
<div class="col-md-2 mx-auto text-center mb-3"> {
<NavLink class="nav-link text-primary" href="@url" Match="NavLinkMatch.All"> string url = NavigateUrl(p.Path);
<h2><span class="@p.Icon" aria-hidden="true"></span></h2>@SharedLocalizer[p.Name] <div class="col-md-2 mx-auto text-center mb-3">
</NavLink> <NavLink class="nav-link text-primary" href="@url" Match="NavLinkMatch.All">
</div> <h2><span class="@p.Icon" aria-hidden="true"></span></h2>@SharedLocalizer[p.Name]
</NavLink>
</div>
}
} }
} </div>
</div> }
@code { @code {
private List<Page> _pages; private List<Page> _pages;
@ -29,7 +32,7 @@
var admin = PageState.Pages.FirstOrDefault(item => item.Path == "admin"); var admin = PageState.Pages.FirstOrDefault(item => item.Path == "admin");
if (admin != null) if (admin != null)
{ {
_pages = PageState.Pages.Where(item => item.ParentId == admin?.PageId).ToList(); _pages = PageState.Pages.Where(item => item.ParentId == admin.PageId).ToList();
} }
} }
} }