diff options
| author | Patrick Barron <18354464+barronpm@users.noreply.github.com> | 2020-05-12 16:08:28 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-12 16:08:28 +0000 |
| commit | 6379391f871424177c6048a54ccd061d6e44bc4a (patch) | |
| tree | cf268efbe2d8aaeee964ef8e893ae382abf88ad4 /Emby.Server.Implementations/Library/UserManager.cs | |
| parent | 37dcbfbc3980ed962c28fe7f1ee9d8a78f65ec19 (diff) | |
| parent | 32c118222647f121c0b17055c0ef158763c0b5d2 (diff) | |
Merge branch 'master' into activitydb-efcore
Diffstat (limited to 'Emby.Server.Implementations/Library/UserManager.cs')
| -rw-r--r-- | Emby.Server.Implementations/Library/UserManager.cs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Emby.Server.Implementations/Library/UserManager.cs b/Emby.Server.Implementations/Library/UserManager.cs index d63bc6bda..b8feb5535 100644 --- a/Emby.Server.Implementations/Library/UserManager.cs +++ b/Emby.Server.Implementations/Library/UserManager.cs @@ -608,6 +608,31 @@ namespace Emby.Server.Implementations.Library return dto; } + public PublicUserDto GetPublicUserDto(User user, string remoteEndPoint = null) + { + if (user == null) + { + throw new ArgumentNullException(nameof(user)); + } + + IAuthenticationProvider authenticationProvider = GetAuthenticationProvider(user); + bool hasConfiguredPassword = authenticationProvider.HasPassword(user); + bool hasConfiguredEasyPassword = !string.IsNullOrEmpty(authenticationProvider.GetEasyPasswordHash(user)); + + bool hasPassword = user.Configuration.EnableLocalPassword && + !string.IsNullOrEmpty(remoteEndPoint) && + _networkManager.IsInLocalNetwork(remoteEndPoint) ? hasConfiguredEasyPassword : hasConfiguredPassword; + + PublicUserDto dto = new PublicUserDto + { + Name = user.Name, + HasPassword = hasPassword, + HasConfiguredPassword = hasConfiguredPassword, + }; + + return dto; + } + public UserDto GetOfflineUserDto(User user) { var dto = GetUserDto(user); |
