Skip to content

Commit

Permalink
Apparently, you can no longer remove tracks from a random owners play…
Browse files Browse the repository at this point in the history
…list and someone forgot to tell me
  • Loading branch information
mjwsteenbergen committed May 5, 2024
1 parent 8f85fb2 commit 26e970f
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
12 changes: 6 additions & 6 deletions ApiLibs/Spotify/PlaylistService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -111,25 +111,25 @@ public async Task RemoveTracksAll(Playlist playlist, IEnumerable<Track> tracks)
while(tracks.Count() > 0)
{
var remove = tracks.Take(100);
await RemoveTracks(playlist.Id, playlist.Owner.Id, remove.Select(i => i.Uri));
await RemoveTracks(playlist.Id, remove.Select(i => i.Uri), playlist.Owner.Id);
tracks = tracks.Skip(100).ToList();
}
}

public async Task RemoveTracks(Playlist playlist, IEnumerable<Track> tracks)
public Task RemoveTracks(Playlist playlist, IEnumerable<Track> tracks)
{
await RemoveTracks(playlist.Id, playlist.Owner.Id, tracks.Select(i => i.Uri));
return RemoveTracks(playlist.Id, tracks.Select(i => i.Uri), playlist.Owner.Id);
}

private async Task RemoveTracks(string playlistId, string ownerId, IEnumerable<string> tracks)
private Task RemoveTracks(string playlistId, IEnumerable<string> tracks, string ownerId = null)
{
await MakeRequest<string>($"users/{ownerId}/playlists/{playlistId}/tracks", Call.DELETE, content: new
return MakeRequest<string>($"playlists/{playlistId}/tracks", Call.DELETE, content: new
{
tracks = tracks.Select(i => new
{
uri = i
})
});
});
}
}
}
3 changes: 2 additions & 1 deletion ApiLibs/Spotify/SpotifyService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public SpotifyService(string refreshToken, string clientId, string clientSecret)

RequestResponseMiddleware.Add(async (resp) =>
{
if (resp.StatusCode == HttpStatusCode.BadRequest || resp.StatusCode == HttpStatusCode.Forbidden)
if (resp.StatusCode == HttpStatusCode.BadRequest)
{
var request = resp.Request;
if (request.EndPoint == "api/token")
Expand Down Expand Up @@ -169,5 +169,6 @@ private Scope(string name)
public static Scope UserTopRead => new Scope("user-top-read");
public static Scope UserModifyPlaybackState => new Scope("user-modify-playback-state");
public static Scope UserReadPlaybackState => new Scope("user-read-playback-state");
public static Scope UserReadRecentlyPlayed => new Scope("user-read-recently-played");
}
}

0 comments on commit 26e970f

Please sign in to comment.