From 468f186511409844d924b0877a4dd66957a76185 Mon Sep 17 00:00:00 2001 From: Pavel Vesely Date: Mon, 19 Apr 2021 20:03:18 +0200 Subject: [PATCH 1/5] Default Alias When alias is not found in alias table, Oqtane fails with exception. This solution allows define default alias (*) for default site with unknown alias. --- Oqtane.Server/Repository/AliasRepository.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Oqtane.Server/Repository/AliasRepository.cs b/Oqtane.Server/Repository/AliasRepository.cs index f25c4c03..cbec2452 100644 --- a/Oqtane.Server/Repository/AliasRepository.cs +++ b/Oqtane.Server/Repository/AliasRepository.cs @@ -65,8 +65,8 @@ namespace Oqtane.Repository break; // found a matching alias } } - - return alias; + // return fallback alias + return alias ?? aliases.Find(item => item.Name.Equals("*")); } public void DeleteAlias(int aliasId) From e33c9e417dca3daf12f7a22596b6daa098f1871f Mon Sep 17 00:00:00 2001 From: hishamco Date: Tue, 20 Apr 2021 16:26:17 +0300 Subject: [PATCH 2/5] Remove SupportedCultures entry from appsettings.json --- Oqtane.Server/appsettings.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Oqtane.Server/appsettings.json b/Oqtane.Server/appsettings.json index 1af87b4c..338092ad 100644 --- a/Oqtane.Server/appsettings.json +++ b/Oqtane.Server/appsettings.json @@ -13,7 +13,6 @@ "DefaultContainer": "" }, "Localization": { - "DefaultCulture": "", - "SupportedCultures": [] + "DefaultCulture": "" } } \ No newline at end of file From 0b32dcf9b3e613cddebfb41eed13567fca9f63b6 Mon Sep 17 00:00:00 2001 From: hishamco Date: Tue, 20 Apr 2021 16:27:18 +0300 Subject: [PATCH 3/5] Make English default culture instead of current installed culture --- Oqtane.Server/appsettings.json | 2 +- Oqtane.Shared/Shared/Constants.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Oqtane.Server/appsettings.json b/Oqtane.Server/appsettings.json index 338092ad..01d5161a 100644 --- a/Oqtane.Server/appsettings.json +++ b/Oqtane.Server/appsettings.json @@ -13,6 +13,6 @@ "DefaultContainer": "" }, "Localization": { - "DefaultCulture": "" + "DefaultCulture": "en" } } \ No newline at end of file diff --git a/Oqtane.Shared/Shared/Constants.cs b/Oqtane.Shared/Shared/Constants.cs index 9fde30d5..6b07827e 100644 --- a/Oqtane.Shared/Shared/Constants.cs +++ b/Oqtane.Shared/Shared/Constants.cs @@ -71,6 +71,6 @@ namespace Oqtane.Shared { public static readonly string SatelliteAssemblyExtension = ".resources.dll"; - public static readonly string DefaultCulture = CultureInfo.InstalledUICulture.Name; + public static readonly string DefaultCulture = "en"; } } From 6e5496e9699ee74d7657aa79ec74287e6eb31fb2 Mon Sep 17 00:00:00 2001 From: hishamco Date: Wed, 21 Apr 2021 16:41:24 +0300 Subject: [PATCH 4/5] Exclude English from the languages list --- Oqtane.Client/Modules/Admin/Languages/Add.razor | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Oqtane.Client/Modules/Admin/Languages/Add.razor b/Oqtane.Client/Modules/Admin/Languages/Add.razor index 7efbcf85..59115679 100644 --- a/Oqtane.Client/Modules/Admin/Languages/Add.razor +++ b/Oqtane.Client/Modules/Admin/Languages/Add.razor @@ -61,6 +61,10 @@ else { AddModuleMessage(Localizer["The Only Supported Culture That Has Been Defined Is English"], MessageType.Warning); } + else + { + _supportedCultures = _supportedCultures.Where(c => !c.Name.Equals(Constants.DefaultCulture)); + } } private async Task SaveLanguage() From c52f6c92f1e10275d32bcb761a087d7e5ce4cb11 Mon Sep 17 00:00:00 2001 From: hishamco Date: Wed, 21 Apr 2021 17:47:50 +0300 Subject: [PATCH 5/5] Add English to the language switcher --- Oqtane.Client/Themes/Controls/Theme/LanguageSwitcher.razor | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Oqtane.Client/Themes/Controls/Theme/LanguageSwitcher.razor b/Oqtane.Client/Themes/Controls/Theme/LanguageSwitcher.razor index bd4ac6fc..64b1d196 100644 --- a/Oqtane.Client/Themes/Controls/Theme/LanguageSwitcher.razor +++ b/Oqtane.Client/Themes/Controls/Theme/LanguageSwitcher.razor @@ -27,6 +27,10 @@ protected override async Task OnParametersSetAsync() { var languages = await LanguageService.GetLanguagesAsync(PageState.Site.SiteId); + var defaultCulture = CultureInfo.GetCultureInfo(Constants.DefaultCulture); + + languages.Add(new Language { Code = defaultCulture.Name, Name = defaultCulture.DisplayName }); + _supportedCultures = languages.Select(l => new Culture { Name = l.Code, DisplayName = l.Name }); }