From 8e2a97e39ffdc981475b02b1bc98a3c2eb2ab69a Mon Sep 17 00:00:00 2001 From: Haiping Chen Date: Sat, 11 May 2024 22:22:14 -0500 Subject: [PATCH] Add UserLanguage to IUserIdentity --- .../BotSharp.Abstraction/Users/IUserIdentity.cs | 1 + .../BotSharp.Core/Users/Services/UserIdentity.cs | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/src/Infrastructure/BotSharp.Abstraction/Users/IUserIdentity.cs b/src/Infrastructure/BotSharp.Abstraction/Users/IUserIdentity.cs index a0998117..4fecb48c 100644 --- a/src/Infrastructure/BotSharp.Abstraction/Users/IUserIdentity.cs +++ b/src/Infrastructure/BotSharp.Abstraction/Users/IUserIdentity.cs @@ -8,4 +8,5 @@ public interface IUserIdentity string FirstName { get; } string LastName { get; } string FullName { get; } + string? UserLanguage { get; } } diff --git a/src/Infrastructure/BotSharp.Core/Users/Services/UserIdentity.cs b/src/Infrastructure/BotSharp.Core/Users/Services/UserIdentity.cs index b8acdeea..a8eaac5e 100644 --- a/src/Infrastructure/BotSharp.Core/Users/Services/UserIdentity.cs +++ b/src/Infrastructure/BotSharp.Core/Users/Services/UserIdentity.cs @@ -56,4 +56,14 @@ public class UserIdentity : IUserIdentity return $"{FirstName} {LastName}".Trim(); } } + + [JsonPropertyName("user_language")] + public string? UserLanguage + { + get + { + _contextAccessor.HttpContext.Request.Headers.TryGetValue("User-Language", out var languages); + return languages.FirstOrDefault(); + } + } }