diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-13 15:47:41 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-04-13 15:47:41 -0400 |
| commit | 44ff7167f073c220289a864b100c5bdd46aee7f0 (patch) | |
| tree | 09e7bac01656b2de05d046a82301a5778206243c | |
| parent | 3f9a412b027667d2eabd3b05db2789e732a9a3ff (diff) | |
fix include/exclude item type queries
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/ItemsService.cs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs index 675ac0cd5..c907dfe9b 100644 --- a/MediaBrowser.Api/UserLibrary/ItemsService.cs +++ b/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)) { |
