2
0
Luke Pulverenti 9 жил өмнө
parent
commit
9a73026389

+ 1 - 1
MediaBrowser.Controller/Entities/Audio/MusicGenre.cs

@@ -83,7 +83,7 @@ namespace MediaBrowser.Controller.Entities.Audio
         public IEnumerable<BaseItem> GetTaggedItems(InternalItemsQuery query)
         {
             query.Genres = new[] { Name };
-            query.ExcludeItemTypes = new[] { typeof(MusicVideo).Name, typeof(Audio).Name, typeof(MusicAlbum).Name, typeof(MusicArtist).Name };
+            query.IncludeItemTypes = new[] { typeof(MusicVideo).Name, typeof(Audio).Name, typeof(MusicAlbum).Name, typeof(MusicArtist).Name };
 
             return LibraryManager.GetItemList(query);
         }

+ 4 - 15
MediaBrowser.Server.Implementations/Dto/DtoService.cs

@@ -194,24 +194,13 @@ namespace MediaBrowser.Server.Implementations.Dto
 
         private List<BaseItem> GetTaggedItems(IItemByName byName, User user)
         {
-            var person = byName as Person;
-
-            if (person != null)
+            var items = byName.GetTaggedItems(new InternalItemsQuery(user)
             {
-                var items = _libraryManager.GetItemList(new InternalItemsQuery(user)
-                {
-                    Person = byName.Name
-
-                }, new string[] { });
-
-                return items.ToList();
-            }
+                Recursive = true
 
-            var itemFilter = byName.GetItemFilter();
+            }).ToList();
 
-            return user != null ?
-               user.RootFolder.GetRecursiveChildren(user, itemFilter).ToList() :
-               _libraryManager.RootFolder.GetRecursiveChildren(itemFilter).ToList();
+            return items;
         }
 
         private SyncedItemProgress[] GetSyncedItemProgress(DtoOptions options)

+ 8 - 3
MediaBrowser.Server.Implementations/Library/LibraryManager.cs

@@ -306,9 +306,14 @@ namespace MediaBrowser.Server.Implementations.Library
         /// <returns>Task.</returns>
         private async Task UpdateSeasonZeroNames(string newName, CancellationToken cancellationToken)
         {
-            var seasons = RootFolder.GetRecursiveChildren(i => i is Season)
-                .Cast<Season>()
-                .Where(i => i.IndexNumber.HasValue && i.IndexNumber.Value == 0 && !string.Equals(i.Name, newName, StringComparison.Ordinal))
+            var seasons = GetItemList(new InternalItemsQuery
+            {
+                IncludeItemTypes = new[] { typeof(Season).Name },
+                Recursive = true,
+                IndexNumber = 0
+
+            }).Cast<Season>()
+                .Where(i => !string.Equals(i.Name, newName, StringComparison.Ordinal))
                 .ToList();
 
             foreach (var season in seasons)

+ 10 - 5
MediaBrowser.Server.Implementations/Library/LocalTrailerPostScanTask.cs

@@ -6,6 +6,8 @@ using System;
 using System.Linq;
 using System.Threading;
 using System.Threading.Tasks;
+using MediaBrowser.Controller.Entities.Movies;
+using MediaBrowser.Controller.Entities.TV;
 
 namespace MediaBrowser.Server.Implementations.Library
 {
@@ -22,10 +24,12 @@ namespace MediaBrowser.Server.Implementations.Library
 
         public async Task Run(IProgress<double> progress, CancellationToken cancellationToken)
         {
-            var items = _libraryManager.RootFolder
-                .GetRecursiveChildren(i => i is IHasTrailers)
-                .Cast<IHasTrailers>()
-                .ToList();
+            var items = _libraryManager.GetItemList(new InternalItemsQuery
+            {
+                IncludeItemTypes = new[] { typeof(BoxSet).Name, typeof(Game).Name, typeof(Movie).Name, typeof(Series).Name },
+                Recursive = true
+
+            }).OfType<IHasTrailers>().ToList();
 
             var trailerTypes = Enum.GetNames(typeof(TrailerType))
                     .Select(i => (TrailerType)Enum.Parse(typeof(TrailerType), i, true))
@@ -35,7 +39,8 @@ namespace MediaBrowser.Server.Implementations.Library
             var trailers = _libraryManager.GetItemList(new InternalItemsQuery
             {
                 IncludeItemTypes = new[] { typeof(Trailer).Name },
-                TrailerTypes = trailerTypes
+                TrailerTypes = trailerTypes,
+                Recursive = true
 
             }).ToArray();
 

+ 4 - 8
MediaBrowser.Server.Implementations/Library/Validators/YearsPostScanTask.cs

@@ -20,16 +20,12 @@ namespace MediaBrowser.Server.Implementations.Library.Validators
 
         public async Task Run(IProgress<double> progress, CancellationToken cancellationToken)
         {
-            var allYears = _libraryManager.RootFolder.GetRecursiveChildren(i => i.ProductionYear.HasValue)
-                .Select(i => i.ProductionYear ?? -1)
-                .Where(i => i > 0)
-                .Distinct()
-                .ToList();
-
-            var count = allYears.Count;
+            var yearNumber = 1900;
+            var maxYear = DateTime.UtcNow.Year + 3;
+            var count = maxYear - yearNumber + 1;
             var numComplete = 0;
 
-            foreach (var yearNumber in allYears)
+            while (yearNumber < DateTime.UtcNow.Year + 3)
             {
                 try
                 {

+ 3 - 3
MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs

@@ -1870,9 +1870,9 @@ namespace MediaBrowser.Server.Implementations.Persistence
 
                 using (var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess | CommandBehavior.SingleResult))
                 {
-                    //Logger.Debug("GetItemIdsList query time: {0}ms. Query: {1}",
-                    //    Convert.ToInt32((DateTime.UtcNow - now).TotalMilliseconds),
-                    //    cmd.CommandText);
+                    Logger.Debug("GetItemIdsList query time: {0}ms. Query: {1}",
+                        Convert.ToInt32((DateTime.UtcNow - now).TotalMilliseconds),
+                        cmd.CommandText);
 
                     while (reader.Read())
                     {