diff --git a/allstarr/Program.cs b/allstarr/Program.cs index 1509264..ab1a6ea 100644 --- a/allstarr/Program.cs +++ b/allstarr/Program.cs @@ -120,14 +120,16 @@ builder.Services.Configure(options => // Parse SPOTIFY_IMPORT_PLAYLISTS env var (JSON array format) // Format: [["Name","Id","first|last"],["Name2","Id2","first|last"]] var playlistsEnv = builder.Configuration.GetValue("SpotifyImport:Playlists"); - if (!string.IsNullOrWhiteSpace(playlistsEnv) && options.Playlists.Count == 0) + if (!string.IsNullOrWhiteSpace(playlistsEnv)) { + Console.WriteLine($"Found SPOTIFY_IMPORT_PLAYLISTS env var: {playlistsEnv.Length} chars"); try { // Parse as JSON array of arrays var playlistArrays = System.Text.Json.JsonSerializer.Deserialize(playlistsEnv); - if (playlistArrays != null) + if (playlistArrays != null && playlistArrays.Length > 0) { + Console.WriteLine($"Parsed {playlistArrays.Length} playlists from JSON format"); foreach (var arr in playlistArrays) { if (arr.Length >= 2) @@ -142,16 +144,26 @@ builder.Services.Configure(options => : LocalTracksPosition.First }; options.Playlists.Add(config); + Console.WriteLine($" Added: {config.Name} (ID: {config.Id}, Position: {config.LocalTracksPosition})"); } } } + else + { + Console.WriteLine("JSON format was empty or invalid, will try legacy format"); + } } catch (System.Text.Json.JsonException ex) { Console.WriteLine($"Warning: Failed to parse SPOTIFY_IMPORT_PLAYLISTS: {ex.Message}"); Console.WriteLine("Expected format: [[\"Name\",\"Id\",\"first|last\"],[\"Name2\",\"Id2\",\"first|last\"]]"); + Console.WriteLine("Will try legacy format instead"); } } + else + { + Console.WriteLine("No SPOTIFY_IMPORT_PLAYLISTS env var found, will try legacy format"); + } // Legacy support: Parse old SPOTIFY_IMPORT_PLAYLIST_IDS/NAMES env vars // Only used if new Playlists format is not configured