diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-05-20 15:45:04 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-05-20 15:45:04 -0400 |
| commit | 2daf91b3fe04d8fc189773e60d90cec61996b0f5 (patch) | |
| tree | 7276eed63e2bd38b4ab1c9e5a96547600d59d079 | |
| parent | da91a37f711ce13ca42eaecb94c266126318c15e (diff) | |
update missing season creator
6 files changed, 9 insertions, 36 deletions
diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs index b81276ae7..35dfd52e9 100644 --- a/MediaBrowser.Controller/Entities/CollectionFolder.cs +++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs @@ -23,19 +23,6 @@ namespace MediaBrowser.Controller.Entities PhysicalLocationsList = new List<string>(); } - /// <summary> - /// Gets a value indicating whether this instance is virtual folder. - /// </summary> - /// <value><c>true</c> if this instance is virtual folder; otherwise, <c>false</c>.</value> - [IgnoreDataMember] - public override bool IsVirtualFolder - { - get - { - return true; - } - } - [IgnoreDataMember] protected override bool SupportsShortcutChildren { diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index 3e717862a..c94c26626 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -126,19 +126,6 @@ namespace MediaBrowser.Controller.Entities /// <value><c>true</c> if this instance is root; otherwise, <c>false</c>.</value> public bool IsRoot { get; set; } - /// <summary> - /// Gets a value indicating whether this instance is virtual folder. - /// </summary> - /// <value><c>true</c> if this instance is virtual folder; otherwise, <c>false</c>.</value> - [IgnoreDataMember] - public virtual bool IsVirtualFolder - { - get - { - return false; - } - } - public virtual List<LinkedChild> LinkedChildren { get; set; } [IgnoreDataMember] diff --git a/MediaBrowser.Providers/TV/DummySeasonProvider.cs b/MediaBrowser.Providers/TV/DummySeasonProvider.cs index 2c6e27294..8fb04b852 100644 --- a/MediaBrowser.Providers/TV/DummySeasonProvider.cs +++ b/MediaBrowser.Providers/TV/DummySeasonProvider.cs @@ -69,7 +69,7 @@ namespace MediaBrowser.Providers.TV if (!hasSeason) { - await AddSeason(series, seasonNumber, cancellationToken).ConfigureAwait(false); + await AddSeason(series, seasonNumber, false, cancellationToken).ConfigureAwait(false); hasChanges = true; } @@ -83,7 +83,7 @@ namespace MediaBrowser.Providers.TV if (!hasSeason) { - await AddSeason(series, null, cancellationToken).ConfigureAwait(false); + await AddSeason(series, null, false, cancellationToken).ConfigureAwait(false); hasChanges = true; } @@ -95,12 +95,9 @@ namespace MediaBrowser.Providers.TV /// <summary> /// Adds the season. /// </summary> - /// <param name="series">The series.</param> - /// <param name="seasonNumber">The season number.</param> - /// <param name="cancellationToken">The cancellation token.</param> - /// <returns>Task{Season}.</returns> public async Task<Season> AddSeason(Series series, int? seasonNumber, + bool isMissingSeason, CancellationToken cancellationToken) { var seasonName = seasonNumber == 0 ? @@ -113,7 +110,8 @@ namespace MediaBrowser.Providers.TV { Name = seasonName, IndexNumber = seasonNumber, - Id = _libraryManager.GetNewItemId((series.Id + (seasonNumber ?? -1).ToString(_usCulture) + seasonName), typeof(Season)) + Id = _libraryManager.GetNewItemId((series.Id + (seasonNumber ?? -1).ToString(_usCulture) + seasonName), typeof(Season)), + IsMissingSeason = isMissingSeason }; season.SetParent(series); diff --git a/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs b/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs index e79ad2dfb..2a3150c78 100644 --- a/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs +++ b/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs @@ -418,7 +418,7 @@ namespace MediaBrowser.Providers.TV if (season == null) { var provider = new DummySeasonProvider(_config, _logger, _localization, _libraryManager, _fileSystem); - season = await provider.AddSeason(series, seasonNumber, cancellationToken).ConfigureAwait(false); + season = await provider.AddSeason(series, seasonNumber, true, cancellationToken).ConfigureAwait(false); } var name = string.Format("Episode {0}", episodeNumber.ToString(_usCulture)); diff --git a/MediaBrowser.Providers/TV/SeasonMetadataService.cs b/MediaBrowser.Providers/TV/SeasonMetadataService.cs index 292923d82..fc072052a 100644 --- a/MediaBrowser.Providers/TV/SeasonMetadataService.cs +++ b/MediaBrowser.Providers/TV/SeasonMetadataService.cs @@ -69,7 +69,7 @@ namespace MediaBrowser.Providers.TV private ItemUpdateType SaveIsMissing(Season item, List<Episode> episodes) { - var isMissing = item.LocationType == LocationType.Virtual && episodes.All(i => i.IsMissingEpisode); + var isMissing = item.LocationType == LocationType.Virtual && (episodes.Count == 0 || episodes.All(i => i.IsMissingEpisode)); if (item.IsMissingSeason != isMissing) { diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs index fdf6599da..91f84e2fe 100644 --- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs @@ -1420,8 +1420,9 @@ namespace MediaBrowser.Server.Implementations.LiveTv MediaTypes = new[] { MediaType.Video }, Recursive = true, AncestorIds = folders.Select(i => i.Id.ToString("N")).ToArray(), + IsFolder = false, ExcludeLocationTypes = new[] { LocationType.Virtual }, - Limit = Math.Min(10, query.Limit ?? int.MaxValue), + Limit = Math.Min(200, query.Limit ?? int.MaxValue), SortBy = new[] { ItemSortBy.DateCreated }, SortOrder = SortOrder.Descending }); |
