You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
abp/modules/permission-management/src/Volo.Abp.PermissionManageme.../Pages/AbpPermissionManagement/PermissionManagementModal.c...

55 lines
3.2 KiB

@page
@using Microsoft.AspNetCore.Mvc.Localization
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal
@using Volo.Abp.PermissionManagement.Localization
@using Volo.Abp.PermissionManagement.Web.Pages.AbpPermissionManagement
@model PermissionManagementModal
@inject IHtmlLocalizer<AbpPermissionManagementResource> L
@{
Layout = null;
}
<form method="post" asp-page="/AbpPermissionManagement/PermissionManagementModal" data-script-class="abp.modals.PermissionManagement">
<abp-modal size="Large">
<abp-modal-header title="@(L["Permissions"].Value) - @Model.EntityDisplayName"></abp-modal-header>
<abp-modal-body class="custom-scroll-container">
<abp-input asp-for="SelectAllInAllTabs" label="@L["SelectAllInAllTabs"].Value"/>
<hr class="mt-2 mb-2"/>
<input asp-for="@Model.ProviderKey"/>
<input asp-for="@Model.ProviderName"/>
<abp-tabs name="PermissionsTabs" tab-style="PillVertical" vertical-header-size="_4" class="custom-scroll-container">
@for (var i = 0; i < Model.Groups.Count; i++)
{
var group = Model.Groups[i];
<abp-tab title="@group.DisplayName" name="v-pills-tab-@group.GetNormalizedGroupName()">
<h4>@group.DisplayName</h4>
<hr class="mt-2 mb-3"/>
<div class="custom-scroll-content">
<div class="pl-1 pt-1">
<abp-input asp-for="@group.IsAllPermissionsGranted" name="SelectAllInThisTab"
id="SelectAllInThisTab-@group.GetNormalizedGroupName()"
data-tab-id="v-pills-tab-@group.GetNormalizedGroupName()"
label="@L["SelectAllInThisTab"].Value"/>
<hr class="mb-3"/>
@for (var j = 0; j < group.Permissions.Count; j++)
{
var permission = group.Permissions[j];
<abp-input asp-for="@permission.IsGranted"
abp-id-name="@Model.Groups[i].Permissions[j].IsGranted"
label="@permission.GetShownName(Model.ProviderName)"
disabled="@permission.IsDisabled(Model.ProviderName)"
group-data-permission-name="@permission.Name"
group-data-parent-name="@(permission.ParentName ?? "")"
group-style="margin-left: @(permission.Depth * 20)px"/>
<input asp-for="@permission.Name" abp-id-name="@Model.Groups[i].Permissions[j].Name"/>
}
</div>
</div>
</abp-tab>
}
</abp-tabs>
</abp-modal-body>
<abp-modal-footer buttons="@(AbpModalButtons.Cancel|AbpModalButtons.Save)"></abp-modal-footer>
</abp-modal>
</form>