diff --git a/src/NzbDrone.Core/IndexerSearch/Definitions/AlbumSearchCriteria.cs b/src/NzbDrone.Core/IndexerSearch/Definitions/AlbumSearchCriteria.cs index b79ea3e2c..3c46443f7 100644 --- a/src/NzbDrone.Core/IndexerSearch/Definitions/AlbumSearchCriteria.cs +++ b/src/NzbDrone.Core/IndexerSearch/Definitions/AlbumSearchCriteria.cs @@ -1,18 +1,18 @@ -using System; +using NzbDrone.Common.Extensions; namespace NzbDrone.Core.IndexerSearch.Definitions { public class AlbumSearchCriteria : SearchCriteriaBase { - public string AlbumTitle { get; set; } public int AlbumYear { get; set; } + public string Disambiguation { get; set; } - public string AlbumQuery => GetQueryTitle(AlbumTitle); + public string AlbumQuery => GetQueryTitle($"{AlbumTitle}{(Disambiguation.IsNullOrWhiteSpace() ? string.Empty : $"+{Disambiguation}")}"); public override string ToString() { - return string.Format("[{0} - {1} ({2})]", Artist.Name, AlbumTitle, AlbumYear); + return $"[{Artist.Name} - {AlbumTitle}{(Disambiguation.IsNullOrWhiteSpace() ? string.Empty : $" ({Disambiguation})")} ({AlbumYear})]"; } } } diff --git a/src/NzbDrone.Core/IndexerSearch/NzbSearchService.cs b/src/NzbDrone.Core/IndexerSearch/NzbSearchService.cs index d7f753591..c1ce05294 100644 --- a/src/NzbDrone.Core/IndexerSearch/NzbSearchService.cs +++ b/src/NzbDrone.Core/IndexerSearch/NzbSearchService.cs @@ -9,6 +9,7 @@ using NzbDrone.Core.IndexerSearch.Definitions; using NzbDrone.Core.Indexers; using NzbDrone.Core.Parser.Model; using System.Linq; +using NzbDrone.Common.Extensions; using NzbDrone.Common.TPL; using NzbDrone.Core.Music; @@ -76,7 +77,12 @@ namespace NzbDrone.Core.IndexerSearch { searchSpec.AlbumYear = album.ReleaseDate.Value.Year; } - + + if (album.Disambiguation.IsNotNullOrWhiteSpace()) + { + searchSpec.Disambiguation = album.Disambiguation; + } + return Dispatch(indexer => indexer.Fetch(searchSpec), searchSpec); }