Fixed bug where search queries were unused

This commit is contained in:
zone117x
2015-04-26 00:51:52 -06:00
parent 59cf8c3e9f
commit 26f1ba7016
3 changed files with 140 additions and 125 deletions

View File

@@ -55,7 +55,8 @@ namespace Jackett
{ {
IsConfigured = false; IsConfigured = false;
cookies = new CookieContainer(); cookies = new CookieContainer();
handler = new HttpClientHandler { handler = new HttpClientHandler
{
CookieContainer = cookies, CookieContainer = cookies,
AllowAutoRedirect = true, AllowAutoRedirect = true,
UseCookies = true, UseCookies = true,
@@ -96,7 +97,8 @@ namespace Jackett
var response = await client.PostAsync(LoginPost, content); var response = await client.PostAsync(LoginPost, content);
var responseContent = await response.Content.ReadAsStringAsync(); var responseContent = await response.Content.ReadAsStringAsync();
if (!responseContent.Contains ("/logout.php")) { if (!responseContent.Contains("/logout.php"))
{
CQ dom = responseContent; CQ dom = responseContent;
var messageEl = dom["table tr > td.embedded > h2"].Last(); var messageEl = dom["table tr > td.embedded > h2"].Last();
var errorMessage = messageEl.Text(); var errorMessage = messageEl.Text();
@@ -104,7 +106,9 @@ namespace Jackett
config.CaptchaImage.Value = captchaImage; config.CaptchaImage.Value = captchaImage;
config.CaptchaText.Value = ""; config.CaptchaText.Value = "";
throw new ExceptionWithConfigData(errorMessage, (ConfigurationData)config); throw new ExceptionWithConfigData(errorMessage, (ConfigurationData)config);
} else { }
else
{
var configSaveData = new JObject(); var configSaveData = new JObject();
configSaveData["cookies"] = cookies.ToJson(SiteLink); configSaveData["cookies"] = cookies.ToJson(SiteLink);
@@ -126,7 +130,8 @@ namespace Jackett
List<ReleaseInfo> releases = new List<ReleaseInfo>(); List<ReleaseInfo> releases = new List<ReleaseInfo>();
foreach (var title in query.ShowTitles ?? new string[] { string.Empty }) { foreach (var title in query.ShowTitles ?? new string[] { string.Empty })
{
var searchString = title + " " + query.GetEpisodeSearchString(); var searchString = title + " " + query.GetEpisodeSearchString();
var episodeSearchUrl = string.Format("{0}?search={1}&cat=0", SearchUrl, HttpUtility.UrlEncode(searchString)); var episodeSearchUrl = string.Format("{0}?search={1}&cat=0", SearchUrl, HttpUtility.UrlEncode(searchString));
@@ -135,7 +140,8 @@ namespace Jackett
var table = dom["tbody > tr > .latest"].Parent().Parent(); var table = dom["tbody > tr > .latest"].Parent().Parent();
foreach (var row in table.Children().Skip(1)) { foreach (var row in table.Children().Skip(1))
{
var release = new ReleaseInfo(); var release = new ReleaseInfo();
CQ qDetailsCol = row.ChildElements.ElementAt(1).Cq(); CQ qDetailsCol = row.ChildElements.ElementAt(1).Cq();
@@ -165,6 +171,10 @@ namespace Jackett
release.Seeders = int.Parse(row.ChildElements.ElementAt(8).Cq().Text()); release.Seeders = int.Parse(row.ChildElements.ElementAt(8).Cq().Text());
release.Peers = int.Parse(row.ChildElements.ElementAt(9).Cq().Text()) + release.Seeders; release.Peers = int.Parse(row.ChildElements.ElementAt(9).Cq().Text()) + release.Seeders;
if (!release.Title.ToLower().Contains(title.ToLower()))
continue;
releases.Add(release); releases.Add(release);
} }
} }

View File

@@ -198,7 +198,10 @@ namespace Jackett
var torznabQuery = TorznabQuery.FromHttpQuery(query); var torznabQuery = TorznabQuery.FromHttpQuery(query);
if (torznabQuery.RageID != 0)
torznabQuery.ShowTitles = await sonarrApi.GetShowTitle(torznabQuery.RageID); torznabQuery.ShowTitles = await sonarrApi.GetShowTitle(torznabQuery.RageID);
else
torznabQuery.ShowTitles = new string[] { torznabQuery.SearchTerm };
var releases = await indexer.PerformQuery(torznabQuery); var releases = await indexer.PerformQuery(torznabQuery);

View File

@@ -20,6 +20,7 @@ namespace Jackett
public int Season { get; private set; } public int Season { get; private set; }
public string Episode { get; private set; } public string Episode { get; private set; }
public string[] ShowTitles { get; set; } public string[] ShowTitles { get; set; }
public string SearchTerm { get; set; }
public string GetEpisodeSearchString() public string GetEpisodeSearchString()
{ {
@@ -44,6 +45,7 @@ namespace Jackett
//{t=tvsearch&cat=5030%2c5040&extended=1&apikey=test&offset=0&limit=100&rid=24493&season=5&ep=1} //{t=tvsearch&cat=5030%2c5040&extended=1&apikey=test&offset=0&limit=100&rid=24493&season=5&ep=1}
var q = new TorznabQuery(); var q = new TorznabQuery();
q.QueryType = query["t"]; q.QueryType = query["t"];
q.SearchTerm = query["q"];
q.Categories = query["cat"].Split(','); q.Categories = query["cat"].Split(',');
q.Extended = int.Parse(query["extended"]); q.Extended = int.Parse(query["extended"]);
q.ApiKey = query["apikey"]; q.ApiKey = query["apikey"];