Sfoglia il codice sorgente

fix include/exclude item type queries

Luke Pulverenti 12 anni fa
parent
commit
44ff7167f0
1 ha cambiato i file con 14 aggiunte e 0 eliminazioni
  1. 14 0
      MediaBrowser.Api/UserLibrary/ItemsService.cs

+ 14 - 0
MediaBrowser.Api/UserLibrary/ItemsService.cs

@@ -357,6 +357,20 @@ namespace MediaBrowser.Api.UserLibrary
         /// <returns>IEnumerable{BaseItem}.</returns>
         internal static IEnumerable<BaseItem> ApplyAdditionalFilters(GetItems request, IEnumerable<BaseItem> items)
         {
+            // Exclude item types
+            if (!string.IsNullOrEmpty(request.ExcludeItemTypes))
+            {
+                var vals = request.ExcludeItemTypes.Split(',');
+                items = items.Where(f => !vals.Contains(f.GetType().Name, StringComparer.OrdinalIgnoreCase));
+            }
+
+            // Include item types
+            if (!string.IsNullOrEmpty(request.IncludeItemTypes))
+            {
+                var vals = request.IncludeItemTypes.Split(',');
+                items = items.Where(f => vals.Contains(f.GetType().Name, StringComparer.OrdinalIgnoreCase));
+            }
+            
             // Filter by Series Status
             if (!string.IsNullOrEmpty(request.SeriesStatus))
             {