Browse Source

Removed AbpIdentityMessageLocalizer

pull/5973/head
Mladen Macanovic 6 years ago
parent
commit
e6b9253614
  1. 35
      modules/identity/src/Volo.Abp.Identity.Blazor/AbpIdentityBlazorMessageLocalizerExtensions.cs
  2. 5
      modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor
  3. 25
      modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor
  4. 2
      modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/AbpIdentityDomainSharedModule.cs
  5. 46
      modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/AbpIdentityMessageLocalizer.cs

35
modules/identity/src/Volo.Abp.Identity.Blazor/AbpIdentityBlazorMessageLocalizerExtensions.cs

@ -1,15 +1,44 @@
using System.Collections.Generic;
using System.Linq;
using Blazorise;
using Microsoft.Extensions.Localization;
namespace Volo.Abp.Identity.Blazor
{
public static class AbpIdentityBlazorMessageLocalizerExtensions
{
public static IEnumerable<string> Localize<T>(this AbpIdentityMessageLocalizer<T> abpIdentityMessageLocalizer,
ValidationMessageLocalizerEventArgs eventArgs)
public static IEnumerable<string> Localize<T>(this IStringLocalizer<T> stringLocalizer, ValidationMessageLocalizerEventArgs eventArgs)
{
return abpIdentityMessageLocalizer.Localize(eventArgs.Messages?.Select(m => (m.Message, m.MessageArguments)))?.ToArray();
return LocalizeMessages(stringLocalizer, eventArgs.Messages?.Select(m => (m.Message, m.MessageArguments)))?.ToArray();
}
private static IEnumerable<string> LocalizeMessages<T>(IStringLocalizer<T> stringLocalizer, IEnumerable<(string format, string[] arguments)> messages)
{
return messages?.Select(m => LocalizeMessage(stringLocalizer, m.format, m.arguments));
}
private static string LocalizeMessage<T>(IStringLocalizer<T> stringLocalizer, string format, params string[] arguments)
{
try
{
return arguments?.Length > 0
? string.Format(stringLocalizer[format], LocalizeMessageArguments(stringLocalizer, arguments)?.ToArray())
: stringLocalizer[format];
}
catch
{
return stringLocalizer[format];
}
}
private static IEnumerable<string> LocalizeMessageArguments<T>(IStringLocalizer<T> stringLocalizer, IEnumerable<string> arguments)
{
foreach (var argument in arguments)
{
yield return stringLocalizer[$"DisplayName:{argument}"]
?? stringLocalizer[argument]
?? argument;
}
}
}
}

5
modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/RoleManagement.razor

@ -7,7 +7,6 @@
@using Volo.Abp.PermissionManagement.Blazor.Components
@inherits RoleManagementBase
@inject IStringLocalizer<IdentityResource> L
@inject AbpIdentityMessageLocalizer<IdentityResource> ML
@* ************************* PAGE HEADER ************************* *@
<Row>
<Column ColumnSize="ColumnSize.Is6">
@ -85,7 +84,7 @@
</ModalHeader>
<ModalBody>
<Validations @ref="@CreateValidationsRef" Model="@NewEntity" ValidateOnLoad="false">
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:RoleName"]</FieldLabel>
<TextEdit @bind-Text="@NewEntity.Name">
@ -121,7 +120,7 @@
<ModalBody>
<Validations @ref="@EditValidationsRef" Model="@EditingEntity" ValidateOnLoad="false">
<input type="hidden" name="ConcurrencyStamp" @bind-value="EditingEntity.ConcurrencyStamp" />
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:RoleName"]</FieldLabel>
<TextEdit @bind-Text="EditingEntity.Name">

25
modules/identity/src/Volo.Abp.Identity.Blazor/Pages/Identity/UserManagement.razor

@ -6,7 +6,6 @@
@using Volo.Abp.PermissionManagement.Blazor.Components
@inherits UserManagementBase
@inject IStringLocalizer<IdentityResource> L
@inject AbpIdentityMessageLocalizer<IdentityResource> ML
@* ************************* PAGE HEADER ************************* *@
<Row>
<Column ColumnSize="ColumnSize.Is6">
@ -94,7 +93,7 @@
</Items>
<Content>
<TabPanel Name="UserInformations">
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:UserName"]</FieldLabel>
<TextEdit @bind-Text="NewEntity.UserName">
@ -104,7 +103,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Name"]</FieldLabel>
<TextEdit @bind-Text="NewEntity.Name">
@ -114,7 +113,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Surname"]</FieldLabel>
<TextEdit @bind-Text="NewEntity.Surname">
@ -124,7 +123,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Password"]</FieldLabel>
<TextEdit Role="TextRole.Password" @bind-Text="NewEntity.Password">
@ -134,7 +133,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Email"]</FieldLabel>
<TextEdit @bind-Text="NewEntity.Email">
@ -144,7 +143,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:PhoneNumber"]</FieldLabel>
<TextEdit @bind-Text="NewEntity.PhoneNumber">
@ -203,7 +202,7 @@
</Items>
<Content>
<TabPanel Name="UserInformations">
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:UserName"]</FieldLabel>
<TextEdit @bind-Text="EditingEntity.UserName">
@ -213,7 +212,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Name"]</FieldLabel>
<TextEdit @bind-Text="EditingEntity.Name">
@ -223,7 +222,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Surname"]</FieldLabel>
<TextEdit @bind-Text="EditingEntity.Surname">
@ -233,7 +232,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Password"]</FieldLabel>
<TextEdit Role="TextRole.Password" @bind-Text="EditingEntity.Password">
@ -243,7 +242,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:Email"]</FieldLabel>
<TextEdit @bind-Text="EditingEntity.Email">
@ -253,7 +252,7 @@
</TextEdit>
</Field>
</Validation>
<Validation MessageLocalizer="@ML.Localize">
<Validation MessageLocalizer="@L.Localize">
<Field>
<FieldLabel>@L["DisplayName:PhoneNumber"]</FieldLabel>
<TextEdit @bind-Text="EditingEntity.PhoneNumber">

2
modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/AbpIdentityDomainSharedModule.cs

@ -38,8 +38,6 @@ namespace Volo.Abp.Identity
{
options.MapCodeNamespace("Volo.Abp.Identity", typeof(IdentityResource));
});
context.Services.AddSingleton(typeof(AbpIdentityMessageLocalizer<>), typeof(AbpIdentityMessageLocalizer<>));
}
}
}

46
modules/identity/src/Volo.Abp.Identity.Domain.Shared/Volo/Abp/Identity/AbpIdentityMessageLocalizer.cs

@ -1,46 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Extensions.Localization;
namespace Volo.Abp.Identity
{
public class AbpIdentityMessageLocalizer<T>
{
private readonly IStringLocalizer<T> stringLocalizer;
public AbpIdentityMessageLocalizer(IStringLocalizer<T> stringLocalizer)
{
this.stringLocalizer = stringLocalizer;
}
public virtual string Localize(string format, params string[] arguments)
{
try
{
return arguments?.Length > 0
? string.Format(stringLocalizer[format], LocalizeArguments(arguments)?.ToArray())
: stringLocalizer[format];
}
catch
{
return stringLocalizer[format];
}
}
public virtual IEnumerable<string> Localize(IEnumerable<(string format, string[] arguments)> messages)
{
return messages?.Select(m => Localize(m.format, m.arguments));
}
protected virtual IEnumerable<string> LocalizeArguments(IEnumerable<string> arguments)
{
foreach (var argument in arguments)
{
yield return stringLocalizer[$"DisplayName:{argument}"]
?? stringLocalizer[argument]
?? argument;
}
}
}
}
Loading…
Cancel
Save