Saving
This commit is contained in:
1 parent
9719a0c0fd
commit
1e66851113
146 files changed
+738
-382
No files matched your search
@@ -0,0 +1,42 @@
|
||||
using Microsoft.AspNetCore.Localization;
|
||||
|
||||
using PrivaPub.StaticServices;
|
||||
|
||||
using System.Globalization;
|
||||
|
||||
namespace PrivaPub.Services
|
||||
{
|
||||
public class RequestLocalizationOptionsService
|
||||
{
|
||||
RequestLocalizationOptions RequestLocalizationOptions { get; set; }
|
||||
readonly AppConfigurationService AppConfigurationService;
|
||||
|
||||
public RequestLocalizationOptionsService(AppConfigurationService appConfigurationService)
|
||||
{
|
||||
AppConfigurationService = appConfigurationService;
|
||||
}
|
||||
|
||||
public async Task<RequestLocalizationOptions> Get()
|
||||
{
|
||||
if (RequestLocalizationOptions != default) return RequestLocalizationOptions;
|
||||
if (AppConfigurationService.AppConfiguration == default)
|
||||
await AppConfigurationService.Init();
|
||||
|
||||
RequestLocalizationOptions = new RequestLocalizationOptions();
|
||||
var cultures = AppConfigurationService
|
||||
.AppConfiguration
|
||||
.SupportedLanguages
|
||||
.Select(sl => new CultureInfo(sl))
|
||||
.ToArray();
|
||||
RequestLocalizationOptions.DefaultRequestCulture = new(cultures.First(), cultures.First());
|
||||
RequestLocalizationOptions.SupportedCultures = cultures;
|
||||
RequestLocalizationOptions.SupportedUICultures = cultures;
|
||||
RequestLocalizationOptions.RequestCultureProviders = new IRequestCultureProvider[] {
|
||||
new AcceptLanguageHeaderRequestCultureProvider { Options = RequestLocalizationOptions }
|
||||
};
|
||||
RequestLocalizationOptions.ApplyCurrentCultureToResponseHeaders = true;
|
||||
|
||||
return RequestLocalizationOptions;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user