Add translation support to website, read user's language from settings

This commit is contained in:
jvyden 2022-04-14 16:24:17 -04:00
parent bfec7d788e
commit 3e18d79fa5
No known key found for this signature in database
GPG key ID: 18BCF2BE0262B278
8 changed files with 103 additions and 33 deletions

View file

@ -0,0 +1,21 @@
namespace LBPUnion.ProjectLighthouse.Localization;
public class TranslatableString
{
public TranslatableString(TranslationAreas area, string key)
{
this.Key = key;
this.Area = area;
}
public string Key { get; init; }
public TranslationAreas Area { get; init; }
public string Translate(string language) => LocalizationManager.GetLocalizedString(this.Area, language, this.Key);
[Obsolete("Do not translate by using ToString. Use TranslatableString.Translate().", true)]
public override string ToString() => "NOT TRANSLATED CORRECTLY!";
[Obsolete("Do not translate by using ToString. Use TranslatableString.Translate().", true)]
public static implicit operator string(TranslatableString _) => "NOT TRANSLATED CORRECTLY!";
}