From 28c61295457ebc5856fc59a324f7369324337ab2 Mon Sep 17 00:00:00 2001 From: Lea Date: Tue, 3 Jan 2023 21:30:24 +0100 Subject: [PATCH] feat: apply default user settings to SSO users --- src/Ombi/Controllers/V1/TokenController.cs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/Ombi/Controllers/V1/TokenController.cs b/src/Ombi/Controllers/V1/TokenController.cs index 3dff87857..7744a3928 100644 --- a/src/Ombi/Controllers/V1/TokenController.cs +++ b/src/Ombi/Controllers/V1/TokenController.cs @@ -36,13 +36,15 @@ namespace Ombi.Controllers.V1 public class TokenController : ControllerBase { public TokenController(OmbiUserManager um, ITokenRepository token, - IPlexOAuthManager oAuthManager, ILogger logger, ISettingsService auth) + IPlexOAuthManager oAuthManager, ILogger logger, ISettingsService auth, + ISettingsService userManagement) { _userManager = um; _token = token; _plexOAuthManager = oAuthManager; _log = logger; _authSettings = auth; + _userManagementSettings = userManagement; } private readonly ITokenRepository _token; @@ -50,6 +52,7 @@ namespace Ombi.Controllers.V1 private readonly IPlexOAuthManager _plexOAuthManager; private readonly ILogger _log; private readonly ISettingsService _authSettings; + private readonly ISettingsService _userManagementSettings; /// /// Gets the token. @@ -307,13 +310,21 @@ namespace Ombi.Controllers.V1 { if (authSettings.HeaderAuthCreateUser) { + var defaultSettings = await _userManagementSettings.GetSettingsAsync(); user = new OmbiUser { UserName = username, UserType = UserType.LocalUser, - StreamingCountry = "US", + StreamingCountry = defaultSettings.DefaultStreamingCountry ?? "US", + MovieRequestLimit = defaultSettings.MovieRequestLimit, + MovieRequestLimitType = defaultSettings.MovieRequestLimitType, + EpisodeRequestLimit = defaultSettings.EpisodeRequestLimit, + EpisodeRequestLimitType = defaultSettings.EpisodeRequestLimitType, + MusicRequestLimit = defaultSettings.MusicRequestLimit, + MusicRequestLimitType = defaultSettings.MusicRequestLimitType, }; await _userManager.CreateAsync(user); + await _userManager.AddToRolesAsync(user, defaultSettings.DefaultRoles); } else {