aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCody Robibero <cody@robibe.ro>2022-04-05 05:52:48 -0600
committercrobibero <cody@robibe.ro>2022-04-07 12:54:57 -0400
commitcec9befbedb4a30df1d821864b2d773561b49c3d (patch)
treecded18cd5fff95514fe30dd8064655a12548bd0c
parentd5cc2ad6a8cdaa9c3d3d8c288643a18eaa2dc6f1 (diff)
Merge pull request #7507 from crobibero/studio-image-plugin
Fix StudioImageProvider (cherry picked from commit 5de2db9f5294d7a614d00ff6a6fc1dc0a2919c57) Signed-off-by: crobibero <cody@robibe.ro>
-rw-r--r--MediaBrowser.Providers/Plugins/StudioImages/Configuration/PluginConfiguration.cs11
-rw-r--r--MediaBrowser.Providers/Plugins/StudioImages/Configuration/config.html6
-rw-r--r--MediaBrowser.Providers/Plugins/StudioImages/Plugin.cs1
-rw-r--r--MediaBrowser.Providers/Plugins/StudioImages/StudiosImageProvider.cs14
4 files changed, 19 insertions, 13 deletions
diff --git a/MediaBrowser.Providers/Plugins/StudioImages/Configuration/PluginConfiguration.cs b/MediaBrowser.Providers/Plugins/StudioImages/Configuration/PluginConfiguration.cs
index fad989ab4..cb422ef3d 100644
--- a/MediaBrowser.Providers/Plugins/StudioImages/Configuration/PluginConfiguration.cs
+++ b/MediaBrowser.Providers/Plugins/StudioImages/Configuration/PluginConfiguration.cs
@@ -2,7 +2,7 @@
using MediaBrowser.Model.Plugins;
-namespace MediaBrowser.Providers.Plugins.StudioImages
+namespace MediaBrowser.Providers.Plugins.StudioImages.Configuration
{
public class PluginConfiguration : BasePluginConfiguration
{
@@ -12,12 +12,19 @@ namespace MediaBrowser.Providers.Plugins.StudioImages
{
get
{
+ if (string.IsNullOrEmpty(_repository))
+ {
+ _repository = Plugin.DefaultServer;
+ }
+
return _repository;
}
set
{
- _repository = value.TrimEnd('/');
+ _repository = string.IsNullOrEmpty(value)
+ ? Plugin.DefaultServer
+ : value.TrimEnd('/');
}
}
}
diff --git a/MediaBrowser.Providers/Plugins/StudioImages/Configuration/config.html b/MediaBrowser.Providers/Plugins/StudioImages/Configuration/config.html
index f9fe3dc2e..63750dbcd 100644
--- a/MediaBrowser.Providers/Plugins/StudioImages/Configuration/config.html
+++ b/MediaBrowser.Providers/Plugins/StudioImages/Configuration/config.html
@@ -9,8 +9,8 @@
<div class="content-primary">
<form class="configForm">
<div class="inputContainer">
- <input is="emby-input" type="text" id="repository" required label="Repository" />
- <div class="fieldDescription">This can be any Jellyfin-compatible artwork repository.</div>
+ <input is="emby-input" type="text" id="repository" label="Repository" />
+ <div class="fieldDescription">This can be any Jellyfin-compatible artwork repository. Leave blank to use default repository.</div>
</div>
<br />
<div>
@@ -44,7 +44,7 @@
Dashboard.showLoadingMsg();
ApiClient.getPluginConfiguration(PluginConfig.pluginId).then(function (config) {
- config.RepositoryUrl = document.querySelector('#server').value;
+ config.RepositoryUrl = document.querySelector('#repository').value;
ApiClient.updatePluginConfiguration(PluginConfig.pluginId, config).then(Dashboard.processPluginConfigurationUpdateResult);
});
diff --git a/MediaBrowser.Providers/Plugins/StudioImages/Plugin.cs b/MediaBrowser.Providers/Plugins/StudioImages/Plugin.cs
index f4941565f..5e653d039 100644
--- a/MediaBrowser.Providers/Plugins/StudioImages/Plugin.cs
+++ b/MediaBrowser.Providers/Plugins/StudioImages/Plugin.cs
@@ -7,6 +7,7 @@ using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Model.Plugins;
using MediaBrowser.Model.Serialization;
+using MediaBrowser.Providers.Plugins.StudioImages.Configuration;
namespace MediaBrowser.Providers.Plugins.StudioImages
{
diff --git a/MediaBrowser.Providers/Plugins/StudioImages/StudiosImageProvider.cs b/MediaBrowser.Providers/Plugins/StudioImages/StudiosImageProvider.cs
index ce267ac84..ef822a22a 100644
--- a/MediaBrowser.Providers/Plugins/StudioImages/StudiosImageProvider.cs
+++ b/MediaBrowser.Providers/Plugins/StudioImages/StudiosImageProvider.cs
@@ -18,29 +18,24 @@ using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.IO;
using MediaBrowser.Model.Providers;
-using MediaBrowser.Providers.Plugins.StudioImages;
-namespace MediaBrowser.Providers.Studios
+namespace MediaBrowser.Providers.Plugins.StudioImages
{
public class StudiosImageProvider : IRemoteImageProvider
{
private readonly IServerConfigurationManager _config;
private readonly IHttpClientFactory _httpClientFactory;
private readonly IFileSystem _fileSystem;
- private readonly string repositoryUrl;
public StudiosImageProvider(IServerConfigurationManager config, IHttpClientFactory httpClientFactory, IFileSystem fileSystem)
{
_config = config;
_httpClientFactory = httpClientFactory;
_fileSystem = fileSystem;
- repositoryUrl = Plugin.Instance.Configuration.RepositoryUrl;
}
public string Name => "Artwork Repository";
- public int Order => 0;
-
public bool Supports(BaseItem item)
{
return item is Studio;
@@ -98,12 +93,12 @@ namespace MediaBrowser.Providers.Studios
private string GetUrl(string image, string filename)
{
- return string.Format(CultureInfo.InvariantCulture, "{0}/images/{1}/{2}.jpg", repositoryUrl, image, filename);
+ return string.Format(CultureInfo.InvariantCulture, "{0}/images/{1}/{2}.jpg", GetRepositoryUrl(), image, filename);
}
private Task<string> EnsureThumbsList(string file, CancellationToken cancellationToken)
{
- string url = string.Format(CultureInfo.InvariantCulture, "{0}/thumbs.txt", repositoryUrl);
+ string url = string.Format(CultureInfo.InvariantCulture, "{0}/thumbs.txt", GetRepositoryUrl());
return EnsureList(url, file, _fileSystem, cancellationToken);
}
@@ -169,5 +164,8 @@ namespace MediaBrowser.Providers.Studios
}
}
}
+
+ private string GetRepositoryUrl()
+ => Plugin.Instance.Configuration.RepositoryUrl;
}
}