Browse Source

Remove DisplayNameKey and DisplayNameResource form PermissionGrantInfoDto

Because localization can be properly done in the backend side now.
pull/13845/head
Halil İbrahim Kalkan 4 years ago
parent
commit
49b05c5e7c
  1. 4
      modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/PermissionGrantInfoDto.cs
  2. 6
      modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo/Abp/PermissionManagement/PermissionAppService.cs
  3. 45
      modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs
  4. 46
      modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Pages/AbpPermissionManagement/PermissionManagementModal.cshtml.cs

4
modules/permission-management/src/Volo.Abp.PermissionManagement.Application.Contracts/Volo/Abp/PermissionManagement/PermissionGrantInfoDto.cs

@ -7,10 +7,6 @@ public class PermissionGrantInfoDto
public string Name { get; set; }
public string DisplayName { get; set; }
public string DisplayNameKey { get; set; }
public string DisplayNameResource { get; set; }
public string ParentName { get; set; }

6
modules/permission-management/src/Volo.Abp.PermissionManagement.Application/Volo/Abp/PermissionManagement/PermissionAppService.cs

@ -101,15 +101,9 @@ public class PermissionAppService : ApplicationService, IPermissionAppService
private PermissionGrantInfoDto CreatePermissionGrantInfoDto(PermissionDefinition permission)
{
var localizableDisplayName = permission.DisplayName as LocalizableString;
return new PermissionGrantInfoDto {
Name = permission.Name,
DisplayName = permission.DisplayName.Localize(StringLocalizerFactory),
DisplayNameKey = localizableDisplayName?.Name,
DisplayNameResource = localizableDisplayName?.ResourceType != null
? LocalizationResourceNameAttribute.GetName(localizableDisplayName.ResourceType)
: null,
ParentName = permission.Parent?.Name,
AllowedProviders = permission.Providers,
GrantedProviders = new List<ProviderInfoDto>()

45
modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Components/PermissionManagementModal.razor.cs

@ -84,8 +84,6 @@ public partial class PermissionManagementModal
var result = await PermissionAppService.GetAsync(_providerName, _providerKey);
UpdateLocalizations(result);
_entityDisplayName = entityDisplayName ?? result.EntityDisplayName;
_groups = result.Groups;
@ -252,47 +250,4 @@ public partial class PermissionManagementModal
eventArgs.Cancel = eventArgs.CloseReason == CloseReason.FocusLostClosing;
return Task.CompletedTask;
}
protected virtual void UpdateLocalizations(GetPermissionListResultDto result)
{
foreach (var group in result.Groups)
{
group.DisplayName = Localize(
group.DisplayNameKey,
group.DisplayNameResource,
group.DisplayName
);
foreach (var permission in group.Permissions)
{
permission.DisplayName = Localize(
permission.DisplayNameKey,
permission.DisplayNameResource,
permission.DisplayName
);
}
}
}
protected virtual string Localize(string key, string resourceName, string fallbackValue)
{
if (key.IsNullOrEmpty() || resourceName.IsNullOrEmpty())
{
return fallbackValue;
}
var resource = LocalizationOptions.Value.Resources.GetOrDefault(resourceName);
if (resource == null)
{
return fallbackValue;
}
var result = new LocalizableString(key, resourceName).Localize(StringLocalizerFactory);
if (result.ResourceNotFound)
{
return fallbackValue;
}
return result.Value;
}
}

46
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Pages/AbpPermissionManagement/PermissionManagementModal.cshtml.cs

@ -1,4 +1,3 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
@ -60,8 +59,6 @@ public class PermissionManagementModal : AbpPageModel
var result = await PermissionAppService.GetAsync(ProviderName, ProviderKey);
UpdateLocalizations(result);
EntityDisplayName = !string.IsNullOrWhiteSpace(ProviderKeyDisplayName)
? ProviderKeyDisplayName
: result.EntityDisplayName;
@ -86,49 +83,6 @@ public class PermissionManagementModal : AbpPageModel
return Page();
}
private void UpdateLocalizations(GetPermissionListResultDto result)
{
foreach (var group in result.Groups)
{
group.DisplayName = Localize(
group.DisplayNameKey,
group.DisplayNameResource,
group.DisplayName
);
foreach (var permission in group.Permissions)
{
permission.DisplayName = Localize(
permission.DisplayNameKey,
permission.DisplayNameResource,
permission.DisplayName
);
}
}
}
private string Localize(string key, string resourceName, string fallbackValue)
{
if (key.IsNullOrEmpty() || resourceName.IsNullOrEmpty())
{
return fallbackValue;
}
var resource = LocalizationOptions.Resources.GetOrDefault(resourceName);
if (resource == null)
{
return fallbackValue;
}
var result = new LocalizableString(key, resourceName).Localize(StringLocalizerFactory);
if (result.ResourceNotFound)
{
return fallbackValue;
}
return result.Value;
}
public virtual async Task<IActionResult> OnPostAsync()
{
ValidateModel();

Loading…
Cancel
Save