@page "/administration/{url}"
@layout AdminLayout
@rendermode InteractiveServer
@using System.ComponentModel
@using BlazorStrap
@using Microsoft.AspNetCore.Components.Web
@using HopFrame.Web.Admin.Models
@using HopFrame.Web.Admin.Providers
@using HopFrame.Web.Pages.Administration.Layout
@using static Microsoft.AspNetCore.Components.Web.RenderMode
@using HopFrame.Web.Components.Administration
@using BlazorStrap.V5
@using CurrieTechnologies.Razor.SweetAlert2
@using HopFrame.Database.Repositories
@using HopFrame.Security.Claims
@using HopFrame.Web.Admin
@using HopFrame.Web.Components
@_pageData.Title
@foreach (var prop in GetListingProperties()) {
@if (prop.Sortable) {
OrderBy(prop.Name)">@prop.DisplayName
@if (_currentSortProperty == prop.Name) {
}
}
else {
@prop.DisplayName
}
}
@if (_hasEditPermission || _hasDeletePermission) {
Actions
}
@foreach (var entry in _displayedModels) {
@foreach (var prop in GetListingProperties()) {
@if (prop.Bold) {
@GetPrintableValue(entry, prop)
}
else {
@GetPrintableValue(entry, prop)
}
}
@if (_hasEditPermission || _hasDeletePermission) {
@if (_hasEditPermission) {
Edit
}
@if (_hasDeletePermission) {
Delete
}
}
}
@inject IAdminPagesProvider Pages
@inject IServiceProvider Provider
@inject ITokenContext Auth
@inject IPermissionRepository Permissions
@inject SweetAlertService Alerts
@code {
[Parameter]
public string Url { get; set; }
private AdminPage _pageData;
private IModelRepository _modelRepository;
private IEnumerable