localize names of languages based on user's UI culture

This commit is contained in:
sbwalker 2024-10-14 17:17:54 -04:00
parent 62d59a09cf
commit 52f552b4de

View File

@ -92,6 +92,12 @@ namespace Oqtane.Services
}
site.Pages = pages;
// get language display name for user
foreach (Language language in site.Languages)
{
language.Name = CultureInfo.GetCultureInfo(language.Code).DisplayName;
}
return Task.FromResult(site);
}
@ -130,7 +136,10 @@ namespace Oqtane.Services
// languages
site.Languages = _languages.GetLanguages(site.SiteId).ToList();
var defaultCulture = CultureInfo.GetCultureInfo(Constants.DefaultCulture);
site.Languages.Add(new Language { Code = defaultCulture.Name, Name = defaultCulture.DisplayName, Version = Constants.Version, IsDefault = !site.Languages.Any(l => l.IsDefault) });
if (!site.Languages.Exists(item => item.Code == defaultCulture.Name))
{
site.Languages.Add(new Language { Code = defaultCulture.Name, Name = "", Version = Constants.Version, IsDefault = !site.Languages.Any(l => l.IsDefault) });
}
// themes
site.Themes = _themes.FilterThemes(_themes.GetThemes().ToList());