aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-03-04 12:52:44 -0500
committerLukePulverenti <luke.pulverenti@gmail.com>2013-03-04 12:52:44 -0500
commite080c0e0449007893e99ca399c8215f24836ea63 (patch)
tree3a77c804c47e96652c2812c47547bc0686ef3354
parentb22eec3f783341d61212e8f3252297296de20621 (diff)
parente5a78ba5bf8f0e181c9d1991ba37cb9116d32c1d (diff)
Merge branch 'master' of https://github.com/MediaBrowser/MediaBrowser
-rw-r--r--MediaBrowser.Controller/Providers/Movies/FanArtMovieProvider.cs16
-rw-r--r--MediaBrowser.Controller/Providers/Music/FanArtArtistProvider.cs16
-rw-r--r--MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs12
-rw-r--r--MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs4
-rw-r--r--MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs2
-rw-r--r--MediaBrowser.Model/Configuration/ServerConfiguration.cs84
-rw-r--r--MediaBrowser.Model/Entities/ImageDownloadOptions.cs55
-rw-r--r--MediaBrowser.Model/MediaBrowser.Model.csproj1
-rw-r--r--MediaBrowser.WebDashboard/Html/metadataImages.html100
-rw-r--r--MediaBrowser.WebDashboard/Html/scripts/MetadataImagesPage.js60
10 files changed, 208 insertions, 142 deletions
diff --git a/MediaBrowser.Controller/Providers/Movies/FanArtMovieProvider.cs b/MediaBrowser.Controller/Providers/Movies/FanArtMovieProvider.cs
index d307fe099..9c71642e9 100644
--- a/MediaBrowser.Controller/Providers/Movies/FanArtMovieProvider.cs
+++ b/MediaBrowser.Controller/Providers/Movies/FanArtMovieProvider.cs
@@ -91,9 +91,9 @@ namespace MediaBrowser.Controller.Providers.Movies
var logoExists = item.ResolveArgs.ContainsMetaFileByName(LOGO_FILE);
var discExists = item.ResolveArgs.ContainsMetaFileByName(DISC_FILE);
- return (!artExists && ConfigurationManager.Configuration.DownloadMovieArt)
- || (!logoExists && ConfigurationManager.Configuration.DownloadMovieLogo)
- || (!discExists && ConfigurationManager.Configuration.DownloadMovieDisc);
+ return (!artExists && ConfigurationManager.Configuration.DownloadMovieImages.Art)
+ || (!logoExists && ConfigurationManager.Configuration.DownloadMovieImages.Logo)
+ || (!discExists && ConfigurationManager.Configuration.DownloadMovieImages.Disc);
}
/// <summary>
@@ -131,7 +131,7 @@ namespace MediaBrowser.Controller.Providers.Movies
{
string path;
var hd = ConfigurationManager.Configuration.DownloadHDFanArt ? "hd" : "";
- if (ConfigurationManager.Configuration.DownloadMovieLogo && !item.ResolveArgs.ContainsMetaFileByName(LOGO_FILE))
+ if (ConfigurationManager.Configuration.DownloadMovieImages.Logo && !item.ResolveArgs.ContainsMetaFileByName(LOGO_FILE))
{
var node =
doc.SelectSingleNode("//fanart/movie/movielogos/" + hd + "movielogo[@lang = \"" + language + "\"]/@url") ??
@@ -160,7 +160,7 @@ namespace MediaBrowser.Controller.Providers.Movies
}
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadMovieArt && !item.ResolveArgs.ContainsMetaFileByName(ART_FILE))
+ if (ConfigurationManager.Configuration.DownloadMovieImages.Art && !item.ResolveArgs.ContainsMetaFileByName(ART_FILE))
{
var node =
doc.SelectSingleNode("//fanart/movie/moviearts/" + hd + "movieart[@lang = \"" + language + "\"]/@url") ??
@@ -186,7 +186,7 @@ namespace MediaBrowser.Controller.Providers.Movies
}
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadMovieDisc && !item.ResolveArgs.ContainsMetaFileByName(DISC_FILE))
+ if (ConfigurationManager.Configuration.DownloadMovieImages.Disc && !item.ResolveArgs.ContainsMetaFileByName(DISC_FILE))
{
var node = doc.SelectSingleNode("//fanart/movie/moviediscs/moviedisc[@lang = \"" + language + "\"]/@url") ??
doc.SelectSingleNode("//fanart/movie/moviediscs/moviedisc/@url");
@@ -210,7 +210,7 @@ namespace MediaBrowser.Controller.Providers.Movies
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadMovieBanner && !item.ResolveArgs.ContainsMetaFileByName(BANNER_FILE))
+ if (ConfigurationManager.Configuration.DownloadMovieImages.Banner && !item.ResolveArgs.ContainsMetaFileByName(BANNER_FILE))
{
var node = doc.SelectSingleNode("//fanart/movie/moviebanners/moviebanner[@lang = \"" + language + "\"]/@url") ??
doc.SelectSingleNode("//fanart/movie/moviebanners/moviebanner/@url");
@@ -234,7 +234,7 @@ namespace MediaBrowser.Controller.Providers.Movies
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadMovieThumb && !item.ResolveArgs.ContainsMetaFileByName(THUMB_FILE))
+ if (ConfigurationManager.Configuration.DownloadMovieImages.Thumb && !item.ResolveArgs.ContainsMetaFileByName(THUMB_FILE))
{
var node = doc.SelectSingleNode("//fanart/movie/moviethumbs/moviethumb[@lang = \"" + language + "\"]/@url") ??
doc.SelectSingleNode("//fanart/movie/moviethumbs/moviethumb/@url");
diff --git a/MediaBrowser.Controller/Providers/Music/FanArtArtistProvider.cs b/MediaBrowser.Controller/Providers/Music/FanArtArtistProvider.cs
index d4585d58a..9f0dedf4d 100644
--- a/MediaBrowser.Controller/Providers/Music/FanArtArtistProvider.cs
+++ b/MediaBrowser.Controller/Providers/Music/FanArtArtistProvider.cs
@@ -66,9 +66,9 @@ namespace MediaBrowser.Controller.Providers.Music
var logoExists = item.ResolveArgs.ContainsMetaFileByName(LOGO_FILE);
var discExists = item.ResolveArgs.ContainsMetaFileByName(DISC_FILE);
- return (!artExists && ConfigurationManager.Configuration.DownloadMovieArt)
- || (!logoExists && ConfigurationManager.Configuration.DownloadMovieLogo)
- || (!discExists && ConfigurationManager.Configuration.DownloadMovieDisc);
+ return (!artExists && ConfigurationManager.Configuration.DownloadMusicArtistImages.Art)
+ || (!logoExists && ConfigurationManager.Configuration.DownloadMusicArtistImages.Logo)
+ || (!discExists && ConfigurationManager.Configuration.DownloadMusicArtistImages.Disc);
}
/// <summary>
@@ -105,7 +105,7 @@ namespace MediaBrowser.Controller.Providers.Music
{
string path;
var hd = ConfigurationManager.Configuration.DownloadHDFanArt ? "hd" : "";
- if (ConfigurationManager.Configuration.DownloadMovieLogo && !item.ResolveArgs.ContainsMetaFileByName(LOGO_FILE))
+ if (ConfigurationManager.Configuration.DownloadMusicArtistImages.Logo && !item.ResolveArgs.ContainsMetaFileByName(LOGO_FILE))
{
var node =
doc.SelectSingleNode("//fanart/music/musiclogos/" + hd + "musiclogo/@url") ??
@@ -129,7 +129,7 @@ namespace MediaBrowser.Controller.Providers.Music
}
cancellationToken.ThrowIfCancellationRequested();
- if (!item.ResolveArgs.ContainsMetaFileByName(BACKDROP_FILE))
+ if (ConfigurationManager.Configuration.DownloadMusicArtistImages.Backdrops && !item.ResolveArgs.ContainsMetaFileByName(BACKDROP_FILE))
{
var nodes = doc.SelectNodes("//fanart/music/artistbackgrounds//@url");
if (nodes != null)
@@ -163,7 +163,7 @@ namespace MediaBrowser.Controller.Providers.Music
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadMovieArt && !item.ResolveArgs.ContainsMetaFileByName(ART_FILE))
+ if (ConfigurationManager.Configuration.DownloadMusicArtistImages.Art && !item.ResolveArgs.ContainsMetaFileByName(ART_FILE))
{
var node =
doc.SelectSingleNode("//fanart/music/musicarts/" + hd + "musicart/@url") ??
@@ -187,7 +187,7 @@ namespace MediaBrowser.Controller.Providers.Music
}
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadMovieBanner && !item.ResolveArgs.ContainsMetaFileByName(BANNER_FILE))
+ if (ConfigurationManager.Configuration.DownloadMusicArtistImages.Banner && !item.ResolveArgs.ContainsMetaFileByName(BANNER_FILE))
{
var node = doc.SelectSingleNode("//fanart/music/musicbanners/"+hd+"musicbanner/@url") ??
doc.SelectSingleNode("//fanart/music/musicbanners/musicbanner/@url");
@@ -212,7 +212,7 @@ namespace MediaBrowser.Controller.Providers.Music
cancellationToken.ThrowIfCancellationRequested();
// Artist thumbs are actually primary images (they are square/portrait)
- if (!item.ResolveArgs.ContainsMetaFileByName(PRIMARY_FILE))
+ if (ConfigurationManager.Configuration.DownloadMusicArtistImages.Primary && !item.ResolveArgs.ContainsMetaFileByName(PRIMARY_FILE))
{
var node = doc.SelectSingleNode("//fanart/music/artistthumbs/artistthumb/@url");
path = node != null ? node.Value : null;
diff --git a/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs b/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs
index d89545a8d..5dcead7b1 100644
--- a/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs
+++ b/MediaBrowser.Controller/Providers/TV/FanArtTVProvider.cs
@@ -48,9 +48,9 @@ namespace MediaBrowser.Controller.Providers.TV
var thumbExists = item.ResolveArgs.ContainsMetaFileByName(THUMB_FILE);
- return (!artExists && ConfigurationManager.Configuration.DownloadTVArt)
- || (!logoExists && ConfigurationManager.Configuration.DownloadTVLogo)
- || (!thumbExists && ConfigurationManager.Configuration.DownloadTVThumb);
+ return (!artExists && ConfigurationManager.Configuration.DownloadSeriesImages.Art)
+ || (!logoExists && ConfigurationManager.Configuration.DownloadSeriesImages.Logo)
+ || (!thumbExists && ConfigurationManager.Configuration.DownloadSeriesImages.Thumb);
}
protected override async Task<bool> FetchAsyncInternal(BaseItem item, bool force, CancellationToken cancellationToken)
@@ -80,7 +80,7 @@ namespace MediaBrowser.Controller.Providers.TV
if (doc.HasChildNodes)
{
string path;
- if (ConfigurationManager.Configuration.DownloadTVLogo && !series.ResolveArgs.ContainsMetaFileByName(LOGO_FILE))
+ if (ConfigurationManager.Configuration.DownloadSeriesImages.Logo && !series.ResolveArgs.ContainsMetaFileByName(LOGO_FILE))
{
var node = doc.SelectSingleNode("//fanart/series/clearlogos/clearlogo[@lang = \"" + language + "\"]/@url") ??
doc.SelectSingleNode("//fanart/series/clearlogos/clearlogo/@url");
@@ -104,7 +104,7 @@ namespace MediaBrowser.Controller.Providers.TV
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadTVArt && !series.ResolveArgs.ContainsMetaFileByName(ART_FILE))
+ if (ConfigurationManager.Configuration.DownloadSeriesImages.Art && !series.ResolveArgs.ContainsMetaFileByName(ART_FILE))
{
var node = doc.SelectSingleNode("//fanart/series/cleararts/clearart[@lang = \"" + language + "\"]/@url") ??
doc.SelectSingleNode("//fanart/series/cleararts/clearart/@url");
@@ -128,7 +128,7 @@ namespace MediaBrowser.Controller.Providers.TV
cancellationToken.ThrowIfCancellationRequested();
- if (ConfigurationManager.Configuration.DownloadTVThumb && !series.ResolveArgs.ContainsMetaFileByName(THUMB_FILE))
+ if (ConfigurationManager.Configuration.DownloadSeriesImages.Thumb && !series.ResolveArgs.ContainsMetaFileByName(THUMB_FILE))
{
var node = doc.SelectSingleNode("//fanart/series/tvthumbs/tvthumb[@lang = \"" + language + "\"]/@url") ??
doc.SelectSingleNode("//fanart/series/tvthumbs/tvthumb/@url");
diff --git a/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs
index 71741d225..03d7d3353 100644
--- a/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs
+++ b/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs
@@ -186,7 +186,7 @@ namespace MediaBrowser.Controller.Providers.TV
}
}
- if (ConfigurationManager.Configuration.DownloadTVSeasonBanner && (ConfigurationManager.Configuration.RefreshItemImages || !season.HasLocalImage("banner")))
+ if (ConfigurationManager.Configuration.DownloadSeasonImages.Banner && (ConfigurationManager.Configuration.RefreshItemImages || !season.HasLocalImage("banner")))
{
var n = images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='seasonwide'][Season='" + seasonNumber + "']");
if (n != null)
@@ -218,7 +218,7 @@ namespace MediaBrowser.Controller.Providers.TV
}
}
- if (ConfigurationManager.Configuration.DownloadTVSeasonBackdrops && (ConfigurationManager.Configuration.RefreshItemImages || !season.HasLocalImage("backdrop")))
+ if (ConfigurationManager.Configuration.DownloadSeasonImages.Backdrops && (ConfigurationManager.Configuration.RefreshItemImages || !season.HasLocalImage("backdrop")))
{
var n = images.SelectSingleNode("//Banner[BannerType='fanart'][Season='" + seasonNumber + "']");
if (n != null)
diff --git a/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs
index 1d4063cdd..efb158b1e 100644
--- a/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs
+++ b/MediaBrowser.Controller/Providers/TV/RemoteSeriesProvider.cs
@@ -379,7 +379,7 @@ namespace MediaBrowser.Controller.Providers.TV
}
}
- if (ConfigurationManager.Configuration.DownloadTVBanner && (ConfigurationManager.Configuration.RefreshItemImages || !series.HasLocalImage("banner")))
+ if (ConfigurationManager.Configuration.DownloadSeriesImages.Banner && (ConfigurationManager.Configuration.RefreshItemImages || !series.HasLocalImage("banner")))
{
var n = images.SelectSingleNode("//Banner[BannerType='series']");
if (n != null)
diff --git a/MediaBrowser.Model/Configuration/ServerConfiguration.cs b/MediaBrowser.Model/Configuration/ServerConfiguration.cs
index 71f368397..ff7f5221b 100644
--- a/MediaBrowser.Model/Configuration/ServerConfiguration.cs
+++ b/MediaBrowser.Model/Configuration/ServerConfiguration.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Model.Updates;
+using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.Updates;
using MediaBrowser.Model.Weather;
using ProtoBuf;
using System;
@@ -96,88 +97,34 @@ namespace MediaBrowser.Model.Configuration
public int MaxBackdrops { get; set; }
/// <summary>
- /// Gets or sets a value indicating whether [download movie art].
+ /// Options for specific art to download for movies.
/// </summary>
- /// <value><c>true</c> if [download movie art]; otherwise, <c>false</c>.</value>
[ProtoMember(40)]
- public bool DownloadMovieArt { get; set; }
+ public ImageDownloadOptions DownloadMovieImages { get; set; }
/// <summary>
- /// Gets or sets a value indicating whether [download movie logo].
+ /// Options for specific art to download for Series.
/// </summary>
- /// <value><c>true</c> if [download movie logo]; otherwise, <c>false</c>.</value>
[ProtoMember(41)]
- public bool DownloadMovieLogo { get; set; }
+ public ImageDownloadOptions DownloadSeriesImages { get; set; }
/// <summary>
- /// Gets or sets a value indicating whether [download movie disc].
+ /// Options for specific art to download for Seasons.
/// </summary>
- /// <value><c>true</c> if [download movie disc]; otherwise, <c>false</c>.</value>
[ProtoMember(42)]
- public bool DownloadMovieDisc { get; set; }
+ public ImageDownloadOptions DownloadSeasonImages { get; set; }
/// <summary>
- /// Gets or sets a value indicating whether [download TV art].
+ /// Options for specific art to download for MusicArtists.
/// </summary>
- /// <value><c>true</c> if [download TV art]; otherwise, <c>false</c>.</value>
[ProtoMember(43)]
- public bool DownloadTVArt { get; set; }
+ public ImageDownloadOptions DownloadMusicArtistImages { get; set; }
/// <summary>
- /// Gets or sets a value indicating whether [download TV logo].
+ /// Options for specific art to download for MusicAlbums.
/// </summary>
- /// <value><c>true</c> if [download TV logo]; otherwise, <c>false</c>.</value>
[ProtoMember(44)]
- public bool DownloadTVLogo { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download TV thumb].
- /// </summary>
- /// <value><c>true</c> if [download TV thumb]; otherwise, <c>false</c>.</value>
- [ProtoMember(45)]
- public bool DownloadTVThumb { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download movie banner].
- /// </summary>
- /// <value><c>true</c> if [download movie banner]; otherwise, <c>false</c>.</value>
- [ProtoMember(46)]
- public bool DownloadMovieBanner { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download movie thumb].
- /// </summary>
- /// <value><c>true</c> if [download movie thumb]; otherwise, <c>false</c>.</value>
- [ProtoMember(47)]
- public bool DownloadMovieThumb { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download TV banner].
- /// </summary>
- /// <value><c>true</c> if [download TV banner]; otherwise, <c>false</c>.</value>
- [ProtoMember(48)]
- public bool DownloadTVBanner { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download TV season banner].
- /// </summary>
- /// <value><c>true</c> if [download TV season banner]; otherwise, <c>false</c>.</value>
- [ProtoMember(49)]
- public bool DownloadTVSeasonBanner { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download TV season thumb].
- /// </summary>
- /// <value><c>true</c> if [download TV season thumb]; otherwise, <c>false</c>.</value>
- [ProtoMember(50)]
- public bool DownloadTVSeasonThumb { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [download TV season backdrops].
- /// </summary>
- /// <value><c>true</c> if [download TV season banner]; otherwise, <c>false</c>.</value>
- [ProtoMember(51)]
- public bool DownloadTVSeasonBackdrops { get; set; }
+ public ImageDownloadOptions DownloadMusicAlbumImages { get; set; }
/// <summary>
/// Gets or sets a value indicating whether [download TV season backdrops].
@@ -330,8 +277,11 @@ namespace MediaBrowser.Model.Configuration
TmdbFetchedProfileSize = "w185"; //w185 w45 h632 or original
TmdbFetchedPosterSize = "w500"; //w500, w342, w185 or original
TmdbFetchedBackdropSize = "w1280"; //w1280, w780 or original
- DownloadTVSeasonBanner = true;
- DownloadTVBanner = true;
+ DownloadMovieImages = new ImageDownloadOptions {Backdrops = true, Primary = true};
+ DownloadSeriesImages = new ImageDownloadOptions {Backdrops = true, Primary = true, Banner = true, Logo = true};
+ DownloadSeasonImages = new ImageDownloadOptions {Backdrops = false, Primary = true, Banner = true};
+ DownloadMusicArtistImages = new ImageDownloadOptions {Backdrops = true, Primary = true, Banner = true, Thumb = true};
+ DownloadMusicAlbumImages = new ImageDownloadOptions {Backdrops = true, Primary = false};
DownloadHDFanArt = true;
MaxBackdrops = 4;
diff --git a/MediaBrowser.Model/Entities/ImageDownloadOptions.cs b/MediaBrowser.Model/Entities/ImageDownloadOptions.cs
new file mode 100644
index 000000000..38d442705
--- /dev/null
+++ b/MediaBrowser.Model/Entities/ImageDownloadOptions.cs
@@ -0,0 +1,55 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using ProtoBuf;
+
+namespace MediaBrowser.Model.Entities
+{
+ [ProtoContract]
+ public class ImageDownloadOptions
+ {
+ /// <summary>
+ /// Download Art Image
+ /// </summary>
+ [ProtoMember(1)]
+ public bool Art { get; set; }
+
+ /// <summary>
+ /// Download Logo Image
+ /// </summary>
+ [ProtoMember(2)]
+ public bool Logo { get; set; }
+
+ /// <summary>
+ /// Download Primary Image
+ /// </summary>
+ [ProtoMember(3)]
+ public bool Primary { get; set; }
+
+ /// <summary>
+ /// Download Backdrop Images
+ /// </summary>
+ [ProtoMember(4)]
+ public bool Backdrops { get; set; }
+
+ /// <summary>
+ /// Download Disc Image
+ /// </summary>
+ [ProtoMember(5)]
+ public bool Disc { get; set; }
+
+ /// <summary>
+ /// Download Thumb Image
+ /// </summary>
+ [ProtoMember(6)]
+ public bool Thumb { get; set; }
+
+ /// <summary>
+ /// Download Banner Image
+ /// </summary>
+ [ProtoMember(7)]
+ public bool Banner { get; set; }
+
+ }
+}
diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj
index f291e12c9..0d0e20f81 100644
--- a/MediaBrowser.Model/MediaBrowser.Model.csproj
+++ b/MediaBrowser.Model/MediaBrowser.Model.csproj
@@ -49,6 +49,7 @@
<Compile Include="Entities\BaseItemInfo.cs" />
<Compile Include="Connectivity\ClientConnectionInfo.cs" />
<Compile Include="Connectivity\ClientType.cs" />
+ <Compile Include="Entities\ImageDownloadOptions.cs" />
<Compile Include="Logging\ILogManager.cs" />
<Compile Include="MediaInfo\BlurayDiscInfo.cs" />
<Compile Include="Entities\ChapterInfo.cs" />
diff --git a/MediaBrowser.WebDashboard/Html/metadataImages.html b/MediaBrowser.WebDashboard/Html/metadataImages.html
index 5c9e7e02d..b06a3205b 100644
--- a/MediaBrowser.WebDashboard/Html/metadataImages.html
+++ b/MediaBrowser.WebDashboard/Html/metadataImages.html
@@ -30,44 +30,92 @@
</li>
<li>
<label>Enable additional image downloading:</label>
- <div data-role="controlgroup">
+
+ <div data-role="collapsible">
+ <h3>Movies</h3>
+ <div data-role="controlgroup">
+ <input type="checkbox" data-mini="true" id="chkDownloadMovieArt" name="chkDownloadMovieArt" />
+ <label for="chkDownloadMovieArt">Movie Art</label>
- <input type="checkbox" data-mini="true" id="chkDownloadMovieArt" name="chkDownloadMovieArt" />
- <label for="chkDownloadMovieArt">Movie Art</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadMovieBanner" name="chkDownloadMovieBanner" />
+ <label for="chkDownloadMovieBanner">Movie Banner</label>
- <input type="checkbox" data-mini="true" id="chkDownloadMovieBanner" name="chkDownloadMovieBanner" />
- <label for="chkDownloadMovieBanner">Movie Banner</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadMovieDisc" name="chkDownloadMovieDisc" />
+ <label for="chkDownloadMovieDisc">Movie Disc</label>
- <input type="checkbox" data-mini="true" id="chkDownloadMovieDisc" name="chkDownloadMovieDisc" />
- <label for="chkDownloadMovieDisc">Movie Disc</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadMovieLogo" name="chkDownloadMovieLogo" />
+ <label for="chkDownloadMovieLogo">Movie Logo</label>
- <input type="checkbox" data-mini="true" id="chkDownloadMovieLogo" name="chkDownloadMovieLogo" />
- <label for="chkDownloadMovieLogo">Movie Logo</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadMovieThumb" name="chkDownloadMovieThumb" />
+ <label for="chkDownloadMovieThumb">Movie Thumb</label>
- <input type="checkbox" data-mini="true" id="chkDownloadMovieThumb" name="chkDownloadMovieThumb" />
- <label for="chkDownloadMovieThumb">Movie Thumb</label>
+
+ </div>
+ </div>
- <input type="checkbox" data-mini="true" id="chKDownloadTVArt" name="chKDownloadTVArt" />
- <label for="chKDownloadTVArt">TV Series Art</label>
+ <div data-role="collapsible">
+ <h3>TV Series</h3>
+ <div data-role="controlgroup">
+ <input type="checkbox" data-mini="true" id="chKDownloadTVArt" name="chKDownloadTVArt" />
+ <label for="chKDownloadTVArt">TV Series Art</label>
- <input type="checkbox" data-mini="true" id="chkDownloadTVBanner" name="chkDownloadTVBanner" />
- <label for="chkDownloadTVBanner">TV Series Banner</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadTVBanner" name="chkDownloadTVBanner" />
+ <label for="chkDownloadTVBanner">TV Series Banner</label>
- <input type="checkbox" data-mini="true" id="chkDownloadTVLogo" name="chkDownloadTVLogo" />
- <label for="chkDownloadTVLogo">TV Series Logo</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadTVLogo" name="chkDownloadTVLogo" />
+ <label for="chkDownloadTVLogo">TV Series Logo</label>
- <input type="checkbox" data-mini="true" id="chkDownloadTVThumb" name="chkDownloadTVThumb" />
- <label for="chkDownloadTVThumb">TV Series Thumb</label>
+ <input type="checkbox" data-mini="true" id="chkDownloadTVThumb" name="chkDownloadTVThumb" />
+ <label for="chkDownloadTVThumb">TV Series Thumb</label>
+ </div>
+ </div>
- <input type="checkbox" data-mini="true" id="chkDownloadSeasonBackdrops" name="chkDownloadSeasonBackdrops" />
- <label for="chkDownloadSeasonBackdrops">TV Season Backdrops</label>
- <input type="checkbox" data-mini="true" id="chkDownloadSeasonBanner" name="chkDownloadSeasonBanner" />
- <label for="chkDownloadSeasonBanner">TV Season Banner</label>
+ <div data-role="collapsible">
+ <h3>TV Seasons</h3>
+ <div data-role="controlgroup">
+ <input type="checkbox" data-mini="true" id="chkDownloadSeasonBackdrops" name="chkDownloadSeasonBackdrops" />
+ <label for="chkDownloadSeasonBackdrops">TV Season Backdrops</label>
+
+ <input type="checkbox" data-mini="true" id="chkDownloadSeasonBanner" name="chkDownloadSeasonBanner" />
+ <label for="chkDownloadSeasonBanner">TV Season Banner</label>
+
+ <input type="checkbox" data-mini="true" id="chkDownloadSeasonThumb" name="chkDownloadSeasonThumb" />
+ <label for="chkDownloadSeasonThumb">TV Season Thumb</label>
+ </div>
+
+ </div>
+
+ <div data-role="collapsible">
+ <h3>Music Artists</h3>
+ <div data-role="controlgroup">
+ <input type="checkbox" data-mini="true" id="chkDownloadArtistThumb" name="chkDownloadArtistThumb" />
+ <label for="chkDownloadArtistThumb">Music Artist Thumb (primary image)</label>
+
+ <input type="checkbox" data-mini="true" id="chkDownloadArtistBackdrops" name="chkDownloadArtistBackdrops" />
+ <label for="chkDownloadArtistBackdrops">Music Artist Backdrops</label>
+
+ <input type="checkbox" data-mini="true" id="chkDownloadArtistLogo" name="chkDownloadArtistLogo" />
+ <label for="chkDownloadArtistLogo">Music Artist Logo</label>
+
+ <input type="checkbox" data-mini="true" id="chkDownloadArtistBanner" name="chkDownloadArtistBanner" />
+ <label for="chkDownloadArtistBanner">Music Artist Banner</label>
+ </div>
+
+ </div>
+
+ <div data-role="collapsible">
+ <h3>Music Albums</h3>
+ <div data-role="controlgroup">
+ <input type="checkbox" data-mini="true" id="chkDownloadAlbumPrimary" name="chkDownloadAlbumPrimary" />
+ <label for="chkDownloadAlbumPrimary">Music Album Cover</label>
+
+ <input type="checkbox" data-mini="true" id="chkDownloadAlbumBackdrops" name="chkDownloadAlbumBackdrops" />
+ <label for="chkDownloadAlbumBackdrops">Music Album Backdrops</label>
+ </div>
+
+ </div>
- <input type="checkbox" data-mini="true" id="chkDownloadSeasonThumb" name="chkDownloadSeasonThumb" />
- <label for="chkDownloadSeasonThumb">TV Season Thumb</label>
- </div>
</li>
<li>
<label for="selectTmdbPosterDownloadSize">Tmdb poster download size: </label>
diff --git a/MediaBrowser.WebDashboard/Html/scripts/MetadataImagesPage.js b/MediaBrowser.WebDashboard/Html/scripts/MetadataImagesPage.js
index c9f2523f7..0dff46c39 100644
--- a/MediaBrowser.WebDashboard/Html/scripts/MetadataImagesPage.js
+++ b/MediaBrowser.WebDashboard/Html/scripts/MetadataImagesPage.js
@@ -20,18 +20,24 @@
$('#chkRefreshItemImages', page).checked(config.RefreshItemImages).checkboxradio("refresh");
$('#txtNumbackdrops', page).val(config.MaxBackdrops);
- $('#chkDownloadMovieArt', page).checked(config.DownloadMovieArt).checkboxradio("refresh");
- $('#chkDownloadMovieBanner', page).checked(config.DownloadMovieBanner).checkboxradio("refresh");
- $('#chkDownloadMovieDisc', page).checked(config.DownloadMovieDisc).checkboxradio("refresh");
- $('#chkDownloadMovieLogo', page).checked(config.DownloadMovieLogo).checkboxradio("refresh");
- $('#chkDownloadMovieThumb', page).checked(config.DownloadMovieThumb).checkboxradio("refresh");
- $('#chKDownloadTVArt', page).checked(config.DownloadTVArt).checkboxradio("refresh");
- $('#chkDownloadTVBanner', page).checked(config.DownloadTVBanner).checkboxradio("refresh");
- $('#chkDownloadTVLogo', page).checked(config.DownloadTVLogo).checkboxradio("refresh");
- $('#chkDownloadTVThumb', page).checked(config.DownloadTVThumb).checkboxradio("refresh");
- $('#chkDownloadSeasonBanner', page).checked(config.DownloadTVSeasonBanner).checkboxradio("refresh");
- $('#chkDownloadSeasonThumb', page).checked(config.DownloadTVSeasonThumb).checkboxradio("refresh");
- $('#chkDownloadSeasonBackdrops', page).checked(config.DownloadTVSeasonBackdrops).checkboxradio("refresh");
+ $('#chkDownloadMovieArt', page).checked(config.DownloadMovieImages.Art).checkboxradio("refresh");
+ $('#chkDownloadMovieBanner', page).checked(config.DownloadMovieImages.Banner).checkboxradio("refresh");
+ $('#chkDownloadMovieDisc', page).checked(config.DownloadMovieImages.Disc).checkboxradio("refresh");
+ $('#chkDownloadMovieLogo', page).checked(config.DownloadMovieImages.Logo).checkboxradio("refresh");
+ $('#chkDownloadMovieThumb', page).checked(config.DownloadMovieImages.Thumb).checkboxradio("refresh");
+ $('#chKDownloadTVArt', page).checked(config.DownloadSeriesImages.Art).checkboxradio("refresh");
+ $('#chkDownloadTVBanner', page).checked(config.DownloadSeriesImages.Banner).checkboxradio("refresh");
+ $('#chkDownloadTVLogo', page).checked(config.DownloadSeriesImages.Logo).checkboxradio("refresh");
+ $('#chkDownloadTVThumb', page).checked(config.DownloadSeriesImages.Thumb).checkboxradio("refresh");
+ $('#chkDownloadSeasonBanner', page).checked(config.DownloadSeasonImages.Banner).checkboxradio("refresh");
+ $('#chkDownloadSeasonThumb', page).checked(config.DownloadSeasonImages.Thumb).checkboxradio("refresh");
+ $('#chkDownloadSeasonBackdrops', page).checked(config.DownloadSeasonImages.Backdrops).checkboxradio("refresh");
+ $('#chkDownloadArtistThumb', page).checked(config.DownloadMusicArtistImages.Thumb).checkboxradio("refresh");
+ $('#chkDownloadArtistBackdrops', page).checked(config.DownloadMusicArtistImages.Backdrops).checkboxradio("refresh");
+ $('#chkDownloadArtistLogo', page).checked(config.DownloadMusicArtistImages.Logo).checkboxradio("refresh");
+ $('#chkDownloadArtistBanner', page).checked(config.DownloadMusicArtistImages.Banner).checkboxradio("refresh");
+ $('#chkDownloadAlbumPrimary', page).checked(config.DownloadMusicAlbumImages.Primary).checkboxradio("refresh");
+ $('#chkDownloadAlbumBackdrops', page).checked(config.DownloadMusicAlbumImages.Backdrops).checkboxradio("refresh");
Dashboard.hideLoadingMsg();
},
@@ -50,18 +56,24 @@
config.RefreshItemImages = $('#chkRefreshItemImages', form).checked();
config.MaxBackdrops = $('#txtNumbackdrops', form).val();
- config.DownloadMovieArt = $('#chkDownloadMovieArt', form).checked();
- config.DownloadMovieBanner = $('#chkDownloadMovieBanner', form).checked();
- config.DownloadMovieDisc = $('#chkDownloadMovieDisc', form).checked();
- config.DownloadMovieLogo = $('#chkDownloadMovieLogo', form).checked();
- config.DownloadMovieThumb = $('#chkDownloadMovieThumb', form).checked();
- config.DownloadTVArt = $('#chKDownloadTVArt', form).checked();
- config.DownloadTVBanner = $('#chkDownloadTVBanner', form).checked();
- config.DownloadTVLogo = $('#chkDownloadTVLogo', form).checked();
- config.DownloadTVThumb = $('#chkDownloadTVThumb', form).checked();
- config.DownloadTVSeasonBanner = $('#chkDownloadSeasonBanner', form).checked();
- config.DownloadTVSeasonThumb = $('#chkDownloadSeasonThumb', form).checked();
- config.DownloadTVSeasonBackdrops = $('#chkDownloadSeasonBackdrops', form).checked();
+ config.DownloadMovieImages.Art = $('#chkDownloadMovieArt', form).checked();
+ config.DownloadMovieImages.Banner = $('#chkDownloadMovieBanner', form).checked();
+ config.DownloadMovieImages.Disc = $('#chkDownloadMovieDisc', form).checked();
+ config.DownloadMovieImages.Logo = $('#chkDownloadMovieLogo', form).checked();
+ config.DownloadMovieImages.Thumb = $('#chkDownloadMovieThumb', form).checked();
+ config.DownloadSeriesImages.Art = $('#chKDownloadTVArt', form).checked();
+ config.DownloadSeriesImages.Banner = $('#chkDownloadTVBanner', form).checked();
+ config.DownloadSeriesImages.Logo = $('#chkDownloadTVLogo', form).checked();
+ config.DownloadSeriesImages.Thumb = $('#chkDownloadTVThumb', form).checked();
+ config.DownloadSeasonImages.Banner = $('#chkDownloadSeasonBanner', form).checked();
+ config.DownloadSeasonImages.Thumb = $('#chkDownloadSeasonThumb', form).checked();
+ config.DownloadSeasonImages.Backdrops = $('#chkDownloadSeasonBackdrops', form).checked();
+ config.DownloadMusicArtistImages.Backdrops = $('#chkDownloadArtistBackdrops', form).checked();
+ config.DownloadMusicArtistImages.Logo = $('#chkDownloadArtistLogo', form).checked();
+ config.DownloadMusicArtistImages.Thumb = $('#chkDownloadArtistThumb', form).checked();
+ config.DownloadMusicArtistImages.Banner = $('#chkDownloadArtistBanner', form).checked();
+ config.DownloadMusicAlbumImages.Primary = $('#chkDownloadAlbumPrimary', form).checked();
+ config.DownloadMusicAlbumImages.Backdrops = $('#chkDownloadAlbumBackdrops', form).checked();
ApiClient.updateServerConfiguration(config).done(Dashboard.processServerConfigurationUpdateResult);
});