mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 17:34:09 +02:00
Allow configuration of omdb url (#3353)
OMDB recently added a private.omdbapi.com domain for supporters and this option allows the user to customize it while also allowing that url to change more rapidly in the future
This commit is contained in:

committed by
flightlevel

parent
2fac90df9f
commit
0026a4f26e
@@ -87,6 +87,7 @@ function loadJackettSettings() {
|
|||||||
$("#jackett-prerelease").attr('checked', data.prerelease);
|
$("#jackett-prerelease").attr('checked', data.prerelease);
|
||||||
$("#jackett-logging").attr('checked', data.logging);
|
$("#jackett-logging").attr('checked', data.logging);
|
||||||
$("#jackett-omdbkey").val(data.omdbkey);
|
$("#jackett-omdbkey").val(data.omdbkey);
|
||||||
|
$("#jackett-omdburl").val(data.omdburl);
|
||||||
var password = data.password;
|
var password = data.password;
|
||||||
$("#jackett-adminpwd").val(password);
|
$("#jackett-adminpwd").val(password);
|
||||||
if (password != null && password != '') {
|
if (password != null && password != '') {
|
||||||
@@ -1150,6 +1151,7 @@ function bindUIButtons() {
|
|||||||
var jackett_prerelease = $("#jackett-prerelease").is(':checked');
|
var jackett_prerelease = $("#jackett-prerelease").is(':checked');
|
||||||
var jackett_logging = $("#jackett-logging").is(':checked');
|
var jackett_logging = $("#jackett-logging").is(':checked');
|
||||||
var jackett_omdb_key = $("#jackett-omdbkey").val();
|
var jackett_omdb_key = $("#jackett-omdbkey").val();
|
||||||
|
var jackett_omdb_url = $("#jackett-omdburl").val();
|
||||||
|
|
||||||
var jackett_proxy_url = $("#jackett-proxy-url").val();
|
var jackett_proxy_url = $("#jackett-proxy-url").val();
|
||||||
var jackett_proxy_type = $("#jackett-proxy-type").val();
|
var jackett_proxy_type = $("#jackett-proxy-type").val();
|
||||||
@@ -1166,6 +1168,7 @@ function bindUIButtons() {
|
|||||||
logging: jackett_logging,
|
logging: jackett_logging,
|
||||||
basepathoverride: jackett_basepathoverride,
|
basepathoverride: jackett_basepathoverride,
|
||||||
omdbkey: jackett_omdb_key,
|
omdbkey: jackett_omdb_key,
|
||||||
|
omdburl: jackett_omdb_url,
|
||||||
proxy_type: jackett_proxy_type,
|
proxy_type: jackett_proxy_type,
|
||||||
proxy_url: jackett_proxy_url,
|
proxy_url: jackett_proxy_url,
|
||||||
proxy_port: jackett_proxy_port,
|
proxy_port: jackett_proxy_port,
|
||||||
|
@@ -177,6 +177,10 @@
|
|||||||
<span class="input-header">OMDB API key: </span>
|
<span class="input-header">OMDB API key: </span>
|
||||||
<input id="jackett-omdbkey" class="form-control input-right" type="text" value="" placeholder="">
|
<input id="jackett-omdbkey" class="form-control input-right" type="text" value="" placeholder="">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="input-area">
|
||||||
|
<span class="input-header">OMDB API Url: </span>
|
||||||
|
<input id="jackett-omdburl" class="form-control input-right" type="text" value="" placeholder="http://omdbiapi.com">
|
||||||
|
</div>
|
||||||
<hr />
|
<hr />
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
<a href="https://github.com/Jackett/Jackett" target="_blank" title="Jackett on GitHub">Jackett</a> Version <span id="app-version"></span>
|
<a href="https://github.com/Jackett/Jackett" target="_blank" title="Jackett on GitHub">Jackett</a> Version <span id="app-version"></span>
|
||||||
|
@@ -27,6 +27,7 @@ namespace Jackett.Common.Models.Config
|
|||||||
public bool UpdatePrerelease { get; set; }
|
public bool UpdatePrerelease { get; set; }
|
||||||
public string BasePathOverride { get; set; }
|
public string BasePathOverride { get; set; }
|
||||||
public string OmdbApiKey { get; set; }
|
public string OmdbApiKey { get; set; }
|
||||||
|
public string OmdbApiUrl { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Ignore as we don't really want to be saving settings specified in the command line.
|
/// Ignore as we don't really want to be saving settings specified in the command line.
|
||||||
|
@@ -30,6 +30,8 @@ namespace Jackett.Common.Models.DTO
|
|||||||
[DataMember]
|
[DataMember]
|
||||||
public string omdbkey { get; set; }
|
public string omdbkey { get; set; }
|
||||||
[DataMember]
|
[DataMember]
|
||||||
|
public string omdburl { get; set; }
|
||||||
|
[DataMember]
|
||||||
public string app_version { get; set; }
|
public string app_version { get; set; }
|
||||||
|
|
||||||
[DataMember]
|
[DataMember]
|
||||||
@@ -61,6 +63,7 @@ namespace Jackett.Common.Models.DTO
|
|||||||
logging = config.RuntimeSettings.TracingEnabled;
|
logging = config.RuntimeSettings.TracingEnabled;
|
||||||
basepathoverride = config.BasePathOverride;
|
basepathoverride = config.BasePathOverride;
|
||||||
omdbkey = config.OmdbApiKey;
|
omdbkey = config.OmdbApiKey;
|
||||||
|
omdburl = config.OmdbApiUrl;
|
||||||
app_version = version;
|
app_version = version;
|
||||||
|
|
||||||
proxy_type = config.ProxyType;
|
proxy_type = config.ProxyType;
|
||||||
|
@@ -17,10 +17,11 @@ namespace Jackett.Common.Services
|
|||||||
|
|
||||||
public class OmdbResolver : IImdbResolver
|
public class OmdbResolver : IImdbResolver
|
||||||
{
|
{
|
||||||
public OmdbResolver(WebClient webClient, NonNull<string> omdbApiKey)
|
public OmdbResolver(WebClient webClient, NonNull<string> omdbApiKey, string omdbApiUrl)
|
||||||
{
|
{
|
||||||
WebClient = webClient;
|
WebClient = webClient;
|
||||||
apiKey = omdbApiKey;
|
apiKey = omdbApiKey;
|
||||||
|
url = omdbApiUrl;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<Movie> MovieForId(NonNull<string> id)
|
public async Task<Movie> MovieForId(NonNull<string> id)
|
||||||
@@ -30,7 +31,10 @@ namespace Jackett.Common.Services
|
|||||||
if (!imdbId.StartsWith("tt", StringComparison.Ordinal))
|
if (!imdbId.StartsWith("tt", StringComparison.Ordinal))
|
||||||
imdbId = "tt" + imdbId;
|
imdbId = "tt" + imdbId;
|
||||||
|
|
||||||
var request = new WebRequest("http://omdbapi.com/?apikey=" + apiKey + "&i=" + imdbId);
|
if (string.IsNullOrWhiteSpace(url))
|
||||||
|
url = "http://omdbapi.com";
|
||||||
|
|
||||||
|
var request = new WebRequest(url + "/?apikey=" + apiKey + "&i=" + imdbId);
|
||||||
request.Encoding = Encoding.UTF8;
|
request.Encoding = Encoding.UTF8;
|
||||||
var result = await WebClient.GetString(request);
|
var result = await WebClient.GetString(request);
|
||||||
var movie = JsonConvert.DeserializeObject<Movie>(result.Content);
|
var movie = JsonConvert.DeserializeObject<Movie>(result.Content);
|
||||||
@@ -40,5 +44,6 @@ namespace Jackett.Common.Services
|
|||||||
|
|
||||||
private WebClient WebClient;
|
private WebClient WebClient;
|
||||||
private string apiKey;
|
private string apiKey;
|
||||||
|
private string url;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -160,7 +160,7 @@ namespace Jackett.Common.Services
|
|||||||
IResultFilterProvider resultFilterProvider = null;
|
IResultFilterProvider resultFilterProvider = null;
|
||||||
if (!omdbApiKey.IsNullOrEmptyOrWhitespace())
|
if (!omdbApiKey.IsNullOrEmptyOrWhitespace())
|
||||||
{
|
{
|
||||||
var imdbResolver = new OmdbResolver(webClient, omdbApiKey.ToNonNull());
|
var imdbResolver = new OmdbResolver(webClient, omdbApiKey.ToNonNull(), serverConfig.OmdbApiUrl);
|
||||||
fallbackStrategyProvider = new ImdbFallbackStrategyProvider(imdbResolver);
|
fallbackStrategyProvider = new ImdbFallbackStrategyProvider(imdbResolver);
|
||||||
resultFilterProvider = new ImdbTitleResultFilterProvider(imdbResolver);
|
resultFilterProvider = new ImdbTitleResultFilterProvider(imdbResolver);
|
||||||
}
|
}
|
||||||
|
@@ -91,6 +91,7 @@ namespace Jackett.Controllers
|
|||||||
}
|
}
|
||||||
|
|
||||||
string omdbApiKey = config.omdbkey;
|
string omdbApiKey = config.omdbkey;
|
||||||
|
string omdbApiUrl = config.omdburl;
|
||||||
|
|
||||||
serverConfig.UpdateDisabled = updateDisabled;
|
serverConfig.UpdateDisabled = updateDisabled;
|
||||||
serverConfig.UpdatePrerelease = preRelease;
|
serverConfig.UpdatePrerelease = preRelease;
|
||||||
@@ -101,9 +102,10 @@ namespace Jackett.Controllers
|
|||||||
Engine.SetLogLevel(logging ? LogLevel.Debug : LogLevel.Info);
|
Engine.SetLogLevel(logging ? LogLevel.Debug : LogLevel.Info);
|
||||||
serverConfig.RuntimeSettings.TracingEnabled = logging;
|
serverConfig.RuntimeSettings.TracingEnabled = logging;
|
||||||
|
|
||||||
if (omdbApiKey != serverConfig.OmdbApiKey)
|
if (omdbApiKey != serverConfig.OmdbApiKey || omdbApiUrl != serverConfig.OmdbApiUrl)
|
||||||
{
|
{
|
||||||
serverConfig.OmdbApiKey = omdbApiKey;
|
serverConfig.OmdbApiKey = omdbApiKey;
|
||||||
|
serverConfig.OmdbApiUrl = omdbApiUrl.TrimEnd('/');
|
||||||
configService.SaveConfig(serverConfig);
|
configService.SaveConfig(serverConfig);
|
||||||
// HACK
|
// HACK
|
||||||
indexerService.InitAggregateIndexer();
|
indexerService.InitAggregateIndexer();
|
||||||
|
Reference in New Issue
Block a user