mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 17:34:09 +02:00
Add missed file
This commit is contained in:
@@ -4,6 +4,7 @@ using NLog;
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
@@ -12,15 +13,19 @@ using System.Web.Http;
|
|||||||
|
|
||||||
namespace Jackett.Controllers
|
namespace Jackett.Controllers
|
||||||
{
|
{
|
||||||
|
[AllowAnonymous]
|
||||||
public class APIController : ApiController
|
public class APIController : ApiController
|
||||||
{
|
{
|
||||||
private IIndexerManagerService indexerService;
|
private IIndexerManagerService indexerService;
|
||||||
private Logger logger;
|
private Logger logger;
|
||||||
|
private IServerService serverService;
|
||||||
|
|
||||||
public APIController(IIndexerManagerService i, Logger l)
|
|
||||||
|
public APIController(IIndexerManagerService i, Logger l, IServerService s)
|
||||||
{
|
{
|
||||||
indexerService = i;
|
indexerService = i;
|
||||||
logger = l;
|
logger = l;
|
||||||
|
serverService = s;
|
||||||
}
|
}
|
||||||
|
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
@@ -29,9 +34,17 @@ namespace Jackett.Controllers
|
|||||||
var indexer = indexerService.GetIndexer(indexerName);
|
var indexer = indexerService.GetIndexer(indexerName);
|
||||||
var torznabQuery = TorznabQuery.FromHttpQuery(HttpUtility.ParseQueryString(Request.RequestUri.Query));
|
var torznabQuery = TorznabQuery.FromHttpQuery(HttpUtility.ParseQueryString(Request.RequestUri.Query));
|
||||||
|
|
||||||
if (torznabQuery.RageIDLookupEnabled && indexer.RequiresRageIDLookupDisabled)
|
if (!string.Equals(torznabQuery.ApiKey, serverService.Config.APIKey, StringComparison.InvariantCultureIgnoreCase))
|
||||||
{
|
{
|
||||||
throw new ArgumentException("This indexer requires RageID lookup disabled");
|
return Request.CreateResponse(HttpStatusCode.Forbidden, "Incorrect API key");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (torznabQuery.QueryType == "caps")
|
||||||
|
{
|
||||||
|
return new HttpResponseMessage()
|
||||||
|
{
|
||||||
|
Content = new StringContent(indexer.TorznabCaps.ToXml(), Encoding.UTF8, "application/rss+xml")
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
var releases = await indexer.PerformQuery(torznabQuery);
|
var releases = await indexer.PerformQuery(torznabQuery);
|
||||||
|
Reference in New Issue
Block a user