Fixed: Removing pending release without blocklisting

This commit is contained in:
Bogdan 2024-07-08 22:25:26 +03:00
parent 67943edfbc
commit 9eb26cf58e
2 changed files with 10 additions and 5 deletions

View File

@ -118,6 +118,7 @@ function RemoveQueueItemModal(props: RemoveQueueItemModalProps) {
{ {
key: 'blocklistAndSearch', key: 'blocklistAndSearch',
value: translate('BlocklistAndSearch'), value: translate('BlocklistAndSearch'),
isDisabled: isPending,
hint: multipleSelected hint: multipleSelected
? translate('BlocklistAndSearchMultipleHint') ? translate('BlocklistAndSearchMultipleHint')
: translate('BlocklistAndSearchHint'), : translate('BlocklistAndSearchHint'),
@ -130,7 +131,7 @@ function RemoveQueueItemModal(props: RemoveQueueItemModalProps) {
: translate('BlocklistOnlyHint'), : translate('BlocklistOnlyHint'),
}, },
]; ];
}, [multipleSelected]); }, [isPending, multipleSelected]);
const handleRemovalMethodChange = useCallback( const handleRemovalMethodChange = useCallback(
({ value }: { value: RemovalMethod }) => { ({ value }: { value: RemovalMethod }) => {

View File

@ -77,7 +77,7 @@ namespace Sonarr.Api.V3.Queue
if (pendingRelease != null) if (pendingRelease != null)
{ {
Remove(pendingRelease); Remove(pendingRelease, blocklist);
return; return;
} }
@ -120,7 +120,7 @@ namespace Sonarr.Api.V3.Queue
foreach (var pendingRelease in pendingToRemove.DistinctBy(p => p.Id)) foreach (var pendingRelease in pendingToRemove.DistinctBy(p => p.Id))
{ {
Remove(pendingRelease); Remove(pendingRelease, blocklist);
} }
foreach (var trackedDownload in trackedToRemove.DistinctBy(t => t.DownloadItem.DownloadId)) foreach (var trackedDownload in trackedToRemove.DistinctBy(t => t.DownloadItem.DownloadId))
@ -286,9 +286,13 @@ namespace Sonarr.Api.V3.Queue
} }
} }
private void Remove(NzbDrone.Core.Queue.Queue pendingRelease) private void Remove(NzbDrone.Core.Queue.Queue pendingRelease, bool blocklist)
{ {
_blocklistService.Block(pendingRelease.RemoteEpisode, "Pending release manually blocklisted"); if (blocklist)
{
_blocklistService.Block(pendingRelease.RemoteEpisode, "Pending release manually blocklisted");
}
_pendingReleaseService.RemovePendingQueueItems(pendingRelease.Id); _pendingReleaseService.RemovePendingQueueItems(pendingRelease.Id);
} }