diff options
Diffstat (limited to 'MediaBrowser.Providers')
7 files changed, 31 insertions, 7 deletions
diff --git a/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs b/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs index 753812293..ddc15a612 100644 --- a/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs +++ b/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs @@ -263,6 +263,8 @@ namespace MediaBrowser.Providers.Movies var xmlPath = Path.Combine(movieDataPath, "fanart.xml"); + Directory.CreateDirectory(movieDataPath); + using (var response = await HttpClient.Get(new HttpRequestOptions { Url = url, diff --git a/MediaBrowser.Providers/Movies/MovieDbProvider.cs b/MediaBrowser.Providers/Movies/MovieDbProvider.cs index 1b25dc58f..424070f70 100644 --- a/MediaBrowser.Providers/Movies/MovieDbProvider.cs +++ b/MediaBrowser.Providers/Movies/MovieDbProvider.cs @@ -6,6 +6,7 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Logging; using MediaBrowser.Model.Serialization; +using MediaBrowser.Providers.Savers; using System; using System.Collections.Generic; using System.Globalization; @@ -15,7 +16,6 @@ using System.Net; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Providers.Savers; namespace MediaBrowser.Providers.Movies { diff --git a/MediaBrowser.Providers/Movies/OpenMovieDatabaseProvider.cs b/MediaBrowser.Providers/Movies/OpenMovieDatabaseProvider.cs index f6c0c9208..35daaf2d2 100644 --- a/MediaBrowser.Providers/Movies/OpenMovieDatabaseProvider.cs +++ b/MediaBrowser.Providers/Movies/OpenMovieDatabaseProvider.cs @@ -46,7 +46,7 @@ namespace MediaBrowser.Providers.Movies { get { - return "9"; + return "11"; } } @@ -189,10 +189,9 @@ namespace MediaBrowser.Providers.Movies // Grab series genres because imdb data is better than tvdb. Leave movies alone // But only do it if english is the preferred language because this data will not be localized if (!item.LockedFields.Contains(MetadataFields.Genres) && - item is Series && + ShouldFetchGenres(item) && !string.IsNullOrWhiteSpace(result.Genre) && - !string.Equals(result.Genre, "n/a", StringComparison.OrdinalIgnoreCase) - && string.Equals(ConfigurationManager.Configuration.PreferredMetadataLanguage, "en")) + !string.Equals(result.Genre, "n/a", StringComparison.OrdinalIgnoreCase)) { item.Genres.Clear(); @@ -206,6 +205,17 @@ namespace MediaBrowser.Providers.Movies } } + private bool ShouldFetchGenres(BaseItem item) + { + // Only fetch if other providers didn't get anything + if (item is Trailer) + { + return item.Genres.Count == 0; + } + + return item is Series; + } + protected class RootObject { public string Title { get; set; } diff --git a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs index 131c73f38..8013ddd3c 100644 --- a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs +++ b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs @@ -274,6 +274,8 @@ namespace MediaBrowser.Providers.Music var xmlPath = Path.Combine(artistPath, "fanart.xml"); + Directory.CreateDirectory(artistPath); + using (var response = await HttpClient.Get(new HttpRequestOptions { Url = url, diff --git a/MediaBrowser.Providers/TV/FanArtTVProvider.cs b/MediaBrowser.Providers/TV/FanArtTVProvider.cs index 972665af7..bf0651432 100644 --- a/MediaBrowser.Providers/TV/FanArtTVProvider.cs +++ b/MediaBrowser.Providers/TV/FanArtTVProvider.cs @@ -317,6 +317,8 @@ namespace MediaBrowser.Providers.TV var xmlPath = Path.Combine(seriesDataPath, "fanart.xml"); + Directory.CreateDirectory(seriesDataPath); + using (var response = await HttpClient.Get(new HttpRequestOptions { Url = url, diff --git a/MediaBrowser.Providers/TV/RemoteSeriesProvider.cs b/MediaBrowser.Providers/TV/RemoteSeriesProvider.cs index ef315f5cb..0d2360d5b 100644 --- a/MediaBrowser.Providers/TV/RemoteSeriesProvider.cs +++ b/MediaBrowser.Providers/TV/RemoteSeriesProvider.cs @@ -238,7 +238,11 @@ namespace MediaBrowser.Providers.TV /// <returns>Task{System.Boolean}.</returns> private async Task FetchSeriesData(Series series, string seriesId, string seriesDataPath, bool isForcedRefresh, CancellationToken cancellationToken) { - var files = Directory.EnumerateFiles(seriesDataPath, "*.xml", SearchOption.TopDirectoryOnly).Select(Path.GetFileName).ToList(); + Directory.CreateDirectory(seriesDataPath); + + var files = Directory.EnumerateFiles(seriesDataPath, "*.xml", SearchOption.TopDirectoryOnly) + .Select(Path.GetFileName) + .ToList(); var seriesXmlFilename = ConfigurationManager.Configuration.PreferredMetadataLanguage.ToLower() + ".xml"; diff --git a/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs b/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs index 9e3799ab8..be97285c6 100644 --- a/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs +++ b/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs @@ -150,12 +150,16 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrEmpty(seriesId)) { // Process images - var imagesXmlPath = Path.Combine(RemoteSeriesProvider.GetSeriesDataPath(ConfigurationManager.ApplicationPaths, seriesId), "banners.xml"); + var seriesDataPath = RemoteSeriesProvider.GetSeriesDataPath(ConfigurationManager.ApplicationPaths, seriesId); + + var imagesXmlPath = Path.Combine(seriesDataPath, "banners.xml"); if (!series.HasImage(ImageType.Primary) || !series.HasImage(ImageType.Banner) || series.BackdropImagePaths.Count == 0) { var backdropLimit = ConfigurationManager.Configuration.MaxBackdrops; + Directory.CreateDirectory(seriesDataPath); + try { var fanartData = FetchFanartXmlData(imagesXmlPath, backdropLimit, cancellationToken); |
