diff --git a/MediaBrowser.Controller/Providers/Movies/MovieDbImagesProvider.cs b/MediaBrowser.Controller/Providers/Movies/MovieDbImagesProvider.cs
index 2f1057033..0b76afbc3 100644
--- a/MediaBrowser.Controller/Providers/Movies/MovieDbImagesProvider.cs
+++ b/MediaBrowser.Controller/Providers/Movies/MovieDbImagesProvider.cs
@@ -151,6 +151,13 @@ namespace MediaBrowser.Controller.Providers.Movies
{
return true;
}
+
+ // Don't refresh if we already have both poster and backdrop and we're not refreshing images
+ if (item.LocationType == LocationType.FileSystem && !ConfigurationManager.Configuration.RefreshItemImages
+ && item.HasLocalImage("folder") && item.HasLocalImage("backdrop"))
+ {
+ return false;
+ }
return base.NeedsRefreshInternal(item, providerInfo);
}
diff --git a/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs b/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs
index e2013fb87..79ea75f8e 100644
--- a/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs
+++ b/MediaBrowser.Controller/Providers/TV/RemoteSeasonProvider.cs
@@ -71,6 +71,14 @@ namespace MediaBrowser.Controller.Providers.TV
}
}
+ protected override bool RefreshOnFileSystemStampChange
+ {
+ get
+ {
+ return ConfigurationManager.Configuration.SaveLocalMeta;
+ }
+ }
+
///
/// Needses the refresh internal.
///
@@ -168,7 +176,8 @@ namespace MediaBrowser.Controller.Providers.TV
{
if (ConfigurationManager.Configuration.RefreshItemImages || !season.HasLocalImage("folder"))
{
- var n = images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='season'][Season='" + seasonNumber + "']");
+ var n = images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='season'][Season='" + seasonNumber + "'][Language='" + ConfigurationManager.Configuration.PreferredMetadataLanguage + "']") ??
+ images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='season'][Season='" + seasonNumber + "'][Language='en']");
if (n != null)
{
n = n.SelectSingleNode("./BannerPath");
@@ -187,7 +196,8 @@ namespace MediaBrowser.Controller.Providers.TV
if (ConfigurationManager.Configuration.DownloadSeasonImages.Banner && (ConfigurationManager.Configuration.RefreshItemImages || !season.HasLocalImage("banner")))
{
- var n = images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='seasonwide'][Season='" + seasonNumber + "']");
+ var n = images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='seasonwide'][Season='" + seasonNumber + "'][Language='" + ConfigurationManager.Configuration.PreferredMetadataLanguage + "']") ??
+ images.SelectSingleNode("//Banner[BannerType='season'][BannerType2='seasonwide'][Season='" + seasonNumber + "'][Language='en']");
if (n != null)
{
n = n.SelectSingleNode("./BannerPath");
diff --git a/MediaBrowser.Model/Entities/DisplayPreferences.cs b/MediaBrowser.Model/Entities/DisplayPreferences.cs
index 009df2678..fd8e5931a 100644
--- a/MediaBrowser.Model/Entities/DisplayPreferences.cs
+++ b/MediaBrowser.Model/Entities/DisplayPreferences.cs
@@ -22,6 +22,7 @@ namespace MediaBrowser.Model.Entities
RememberIndexing = false;
PrimaryImageHeight = 250;
PrimaryImageWidth = 250;
+ ShowBackdrop = true;
CustomPrefs = new Dictionary();
}
@@ -71,6 +72,11 @@ namespace MediaBrowser.Model.Entities
/// The scroll direction.
public ScrollDirection ScrollDirection { get; set; }
///
+ /// Gets or sets a value indicating whether to show backdrops on this item.
+ ///
+ /// true if showing backdrops; otherwise, false.
+ public bool ShowBackdrop { get; set; }
+ ///
/// Gets or sets a value indicating whether [remember sorting].
///
/// true if [remember sorting]; otherwise, false.