From eb45e67c81811451cb64cb24dd8b136b4147d6e8 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sun, 5 May 2013 00:49:49 -0400 Subject: more on image uploading --- MediaBrowser.Controller/Entities/BaseItem.cs | 43 ++++++++++++++++++++++------ 1 file changed, 35 insertions(+), 8 deletions(-) (limited to 'MediaBrowser.Controller/Entities') diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 48bfd8075c..a4cbd1b079 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -1475,22 +1475,49 @@ namespace MediaBrowser.Controller.Entities /// Deletes the image. /// /// The type. + /// The index. /// Task. - public async Task DeleteImage(ImageType type) + public Task DeleteImage(ImageType type, int? index) { - if (!HasImage(type)) + if (type == ImageType.Backdrop) { - return; + if (!index.HasValue) + { + throw new ArgumentException("Please specify a backdrop image index to delete."); + } + + var file = BackdropImagePaths[index.Value]; + + BackdropImagePaths.Remove(file); + + // Delete the source file + File.Delete(file); } + else if (type == ImageType.Screenshot) + { + if (!index.HasValue) + { + throw new ArgumentException("Please specify a screenshot image index to delete."); + } + + var file = ScreenshotImagePaths[index.Value]; - // Delete the source file - File.Delete(GetImage(type)); + ScreenshotImagePaths.Remove(file); + + // Delete the source file + File.Delete(file); + } + else + { + // Delete the source file + File.Delete(GetImage(type)); - // Remove it from the item - SetImage(type, null); + // Remove it from the item + SetImage(type, null); + } // Refresh metadata - await RefreshMetadata(CancellationToken.None).ConfigureAwait(false); + return RefreshMetadata(CancellationToken.None); } } } -- cgit v1.2.3