From 210d18220b776f25cdd4f3bd40b5e865ba33b46b Mon Sep 17 00:00:00 2001 From: Josh Patra Date: Sat, 7 Feb 2026 11:22:00 -0500 Subject: [PATCH] fix: use case-insensitive provider key matching --- allstarr/Controllers/AdminController.cs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/allstarr/Controllers/AdminController.cs b/allstarr/Controllers/AdminController.cs index f16ee72..a1a788b 100644 --- a/allstarr/Controllers/AdminController.cs +++ b/allstarr/Controllers/AdminController.cs @@ -686,26 +686,31 @@ public class AdminController : ControllerBase { _logger.LogDebug("Track {Title} has ProviderIds: {Keys}", track.Title, string.Join(", ", providerIds.Keys)); - // Check for external provider keys FIRST - if (providerIds.ContainsKey("SquidWTF")) + // Check for external provider keys (case-insensitive) + // External providers: squidwtf, deezer, qobuz, tidal (lowercase) + var providerKey = providerIds.Keys.FirstOrDefault(k => + k.Equals("squidwtf", StringComparison.OrdinalIgnoreCase) || + k.Equals("SquidWTF", StringComparison.OrdinalIgnoreCase)); + + if (providerKey != null) { isLocal = false; externalProvider = "SquidWTF"; _logger.LogDebug("✓ Track {Title} identified as SquidWTF", track.Title); } - else if (providerIds.ContainsKey("Deezer")) + else if ((providerKey = providerIds.Keys.FirstOrDefault(k => k.Equals("deezer", StringComparison.OrdinalIgnoreCase))) != null) { isLocal = false; externalProvider = "Deezer"; _logger.LogDebug("✓ Track {Title} identified as Deezer", track.Title); } - else if (providerIds.ContainsKey("Qobuz")) + else if ((providerKey = providerIds.Keys.FirstOrDefault(k => k.Equals("qobuz", StringComparison.OrdinalIgnoreCase))) != null) { isLocal = false; externalProvider = "Qobuz"; _logger.LogDebug("✓ Track {Title} identified as Qobuz", track.Title); } - else if (providerIds.ContainsKey("Tidal")) + else if ((providerKey = providerIds.Keys.FirstOrDefault(k => k.Equals("tidal", StringComparison.OrdinalIgnoreCase))) != null) { isLocal = false; externalProvider = "Tidal";