mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 17:34:09 +02:00
broadcasthenet: improve btn's search (#9680)
This commit is contained in:
@@ -89,27 +89,35 @@ namespace Jackett.Common.Indexers
|
||||
|
||||
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
|
||||
{
|
||||
var searchString = query.GetQueryString();
|
||||
var searchString = query.SearchTerm;
|
||||
var btnResults = query.Limit;
|
||||
if (btnResults == 0)
|
||||
btnResults = (int)TorznabCaps.LimitsDefault;
|
||||
var btnOffset = query.Offset;
|
||||
var releases = new List<ReleaseInfo>();
|
||||
var searchParam = new Dictionary<string, string>();
|
||||
|
||||
// If only the season is searched for then change format to match expected format
|
||||
var seasonOnlyMatch = new Regex(@".*\s[Ss]{1}\d{2}(?<![Ee]{1}\d{2,3})?$").Match(searchString);
|
||||
if (seasonOnlyMatch.Success)
|
||||
// If only the season/episode is searched for then change format to match expected format
|
||||
if (query.Season > 0 && query.Episode == null)
|
||||
{
|
||||
searchString = Regex.Replace(searchString, @"[Ss]{1}\d{2}", $"Season {query.Season}");
|
||||
searchParam["name"] = $"Season {query.Season}";
|
||||
searchParam["category"] = "Season";
|
||||
} else if (query.Season > 0 && int.Parse(query.Episode) > 0)
|
||||
{
|
||||
searchParam["name"] = string.Format("S{0:00}E{1:00}", query.Season, int.Parse(query.Episode));
|
||||
searchParam["category"] = "Episode";
|
||||
}
|
||||
|
||||
searchParam["search"] = searchString.Replace(" ", "%");
|
||||
|
||||
var parameters = new JArray
|
||||
{
|
||||
new JValue(configData.Key.Value),
|
||||
new JValue(searchString.Trim()),
|
||||
JObject.FromObject(searchParam),
|
||||
new JValue(btnResults),
|
||||
new JValue(btnOffset)
|
||||
};
|
||||
|
||||
var response = await RequestWithCookiesAndRetryAsync(
|
||||
APIBASE, method: RequestType.POST,
|
||||
headers: new Dictionary<string, string>
|
||||
|
Reference in New Issue
Block a user