plex-api icon indicating copy to clipboard operation
plex-api copied to clipboard

Delete collection and delete item from collection does not seem to work.

Open Rickrat opened this issue 3 years ago • 1 comments

Describe the bug Deleting collections does not work for me.

To Reproduce

  1. Get a list of collections
  2. foreach one, loop through the items and remove them from the collection
  3. finally delete the collection

Expected behavior I expected the collections to be deleted. However, after it runs without exceptions, the collections are there, still intact.

Side Note: There is a TODO throw in ApiService line 145 which I had to comment out to get this to function at all.

Here's my code:

var server = factory.CreateServer();
string url = server.Uri.ToString();

try
{
	var libs = await server.Libraries();
	var movies = libs.Single(c => c.Title == "Movies");

	var collections = await factory.PlexLibraryClient.GetCollectionsAsync(server.AccessToken, url, movies.Key, string.Empty);
	foreach (var col in collections.Collections)
	{
		var items = await factory.PlexLibraryClient.GetCollectionItemsAsync(server.AccessToken, url, col.RatingKey);
		foreach (var item in items.Media)
		{
			await factory.PlexLibraryClient.DeleteCollectionFromLibraryItemAsync(server.AccessToken, url, movies.Key, item.RatingKey, col.Title);
		}

		await factory.PlexLibraryClient.DeleteCollectionFromLibraryItemAsync(server.AccessToken, url, movies.Key, col.RatingKey, col.Title);
	}
	
}
catch (Exception ex)
{
	string msg = ex.Message;
}

Rickrat avatar Oct 21 '22 02:10 Rickrat

I'll take a look. I'll also add a better unit test around Collections

jensenkd avatar Oct 21 '22 03:10 jensenkd