Full Season searching added (Single NZB). SearchProvider added to perform both Season and Episode searching, triggered via jobs.

Tests added for season searching.
This commit is contained in:
Mark McDowall 2011-08-27 22:45:36 -07:00
commit 485f618e02
18 changed files with 644 additions and 262 deletions

View file

@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.ServiceModel.Syndication;
using Ninject;
using NzbDrone.Core.Model.Search;
using NzbDrone.Core.Providers.Core;
namespace NzbDrone.Core.Providers.Indexer
@ -38,13 +39,22 @@ namespace NzbDrone.Core.Providers.Indexer
return item.Links[0].Uri.ToString();
}
protected override IList<string> GetSearchUrls(string seriesTitle, int seasonNumber, int episodeNumber)
protected override IList<string> GetSearchUrls(SearchModel searchModel)
{
var searchUrls = new List<String>();
foreach (var url in Urls)
{
searchUrls.Add(String.Format("{0}&term={1}+s{2:00}e{3:00}", url, GetQueryTitle(seriesTitle), seasonNumber, episodeNumber));
if (searchModel.SearchType == SearchType.EpisodeSearch)
{
searchUrls.Add(String.Format("{0}&term={1}+s{2:00}e{3:00}", url, searchModel.SeriesTitle,
searchModel.SeasonNumber, searchModel.EpisodeNumber));
}
else
{
searchUrls.Add(String.Format("{0}&term={1}+Season", url, searchModel.SeriesTitle));
}
}
return searchUrls;