From cd3b6000a01844cbb170b7e475d1b3b05427f7fc Mon Sep 17 00:00:00 2001 From: Taloth Saldono Date: Mon, 10 Oct 2016 22:34:32 +0200 Subject: [PATCH] Tweaked Nyaa Request Generator to avoid offset=1. --- .../Indexers/Nyaa/NyaaRequestGenerator.cs | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs b/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs index 23bc8ce6d..a6b926cc2 100644 --- a/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs +++ b/src/NzbDrone.Core/Indexers/Nyaa/NyaaRequestGenerator.cs @@ -51,17 +51,11 @@ public virtual IndexerPageableRequestChain GetSearchRequests(AnimeEpisodeSearchC { var searchTitle = PrepareQuery(queryTitle); - pageableRequests.Add(GetPagedRequests(MaxPages, - string.Format("&term={0}+{1:0}", - searchTitle, - searchCriteria.AbsoluteEpisodeNumber))); + pageableRequests.Add(GetPagedRequests(MaxPages, $"{searchTitle}+{searchCriteria.AbsoluteEpisodeNumber:0}")); if (searchCriteria.AbsoluteEpisodeNumber < 10) { - pageableRequests.Add(GetPagedRequests(MaxPages, - string.Format("&term={0}+{1:00}", - searchTitle, - searchCriteria.AbsoluteEpisodeNumber))); + pageableRequests.Add(GetPagedRequests(MaxPages, $"{searchTitle}+{searchCriteria.AbsoluteEpisodeNumber:00}")); } } @@ -82,19 +76,26 @@ public virtual IndexerPageableRequestChain GetSearchRequests(SpecialEpisodeSearc return pageableRequests; } - private IEnumerable GetPagedRequests(int maxPages, string searchParameters) + private IEnumerable GetPagedRequests(int maxPages, string term) { var baseUrl = string.Format("{0}/?page=rss{1}", Settings.BaseUrl.TrimEnd('/'), Settings.AdditionalParameters); + if (term != null) + { + baseUrl += "&term=" + term; + } + if (PageSize == 0) { - yield return new IndexerRequest(string.Format("{0}{1}", baseUrl, searchParameters), HttpAccept.Rss); + yield return new IndexerRequest(baseUrl, HttpAccept.Rss); } else { - for (var page = 0; page < maxPages; page++) + yield return new IndexerRequest(baseUrl, HttpAccept.Rss); + + for (var page = 1; page < maxPages; page++) { - yield return new IndexerRequest(string.Format("{0}&offset={1}{2}", baseUrl, page + 1, searchParameters), HttpAccept.Rss); + yield return new IndexerRequest($"{baseUrl}&offset={page + 1}", HttpAccept.Rss); } } }