diff --git a/Jellyfin.Plugin.TubeArchivistMetadata/Configuration/PluginConfiguration.cs b/Jellyfin.Plugin.TubeArchivistMetadata/Configuration/PluginConfiguration.cs
index 18b5f23..e946fba 100644
--- a/Jellyfin.Plugin.TubeArchivistMetadata/Configuration/PluginConfiguration.cs
+++ b/Jellyfin.Plugin.TubeArchivistMetadata/Configuration/PluginConfiguration.cs
@@ -88,6 +88,7 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Configuration
{
_tubeArchivistApiKey = value;
Plugin.Instance?.LogTAApiConnectionStatus();
+ Plugin.Instance?.UpdateAuthorizationHeader(value);
}
}
@@ -124,8 +125,20 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata.Configuration
set
{
- value.Replace(" ", string.Empty, StringComparison.CurrentCulture).Split(',').ToList().ForEach(u => _jfUsernamesTo.Add(u));
- _logger.LogDebug("Set JFUsernamesTo to: {Message}", value);
+ // Clear existing usernames
+ _jfUsernamesTo.Clear();
+
+ // Split by comma, then trim each part to remove leading/trailing spaces
+ foreach (var username in value.Split(','))
+ {
+ var trimmedUsername = username.Trim();
+ if (!string.IsNullOrEmpty(trimmedUsername))
+ {
+ _jfUsernamesTo.Add(trimmedUsername);
+ }
+ }
+
+ _logger.LogDebug("Set JFUsernamesTo to: {Message}", string.Join(", ", _jfUsernamesTo));
}
}
diff --git a/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs b/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs
index 386948b..0f4f0da 100644
--- a/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs
+++ b/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs
@@ -57,7 +57,8 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata
handler.AllowAutoRedirect = false;
handler.CheckCertificateRevocationList = true;
HttpClient = new HttpClient(handler);
- HttpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Token", Instance?.Configuration.TubeArchivistApiKey);
+ UpdateAuthorizationHeader(Configuration.TubeArchivistApiKey);
+
SessionManager = sessionManager;
sessionManager.PlaybackProgress += OnPlaybackProgress;
LibraryManager = libraryManager;
@@ -128,6 +129,23 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata
}
};
+ ///
+ /// Updates the HTTP client's Authorization header with the current API key.
+ ///
+ /// TubeArchivist API key.
+ public void UpdateAuthorizationHeader(string apiKey)
+ {
+ if (!string.IsNullOrEmpty(apiKey))
+ {
+ HttpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Token", apiKey);
+ Logger.LogInformation("{Message}", "Updated Authorization header with API key");
+ }
+ else
+ {
+ Logger.LogWarning("{Message}", "No TubeArchivist API key configured");
+ }
+ }
+
///
/// Logs the TubeArchivist API connection status.
///