aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities/Genre.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities/Genre.cs')
-rw-r--r--MediaBrowser.Controller/Entities/Genre.cs31
1 files changed, 31 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Entities/Genre.cs b/MediaBrowser.Controller/Entities/Genre.cs
index 6ec78a270..20fab93b2 100644
--- a/MediaBrowser.Controller/Entities/Genre.cs
+++ b/MediaBrowser.Controller/Entities/Genre.cs
@@ -76,6 +76,37 @@ namespace MediaBrowser.Controller.Entities
return LibraryManager.GetItemList(query);
}
+ public TaggedItemCounts GetTaggedItemCounts(InternalItemsQuery query)
+ {
+ query.GenreIds = [Id];
+ query.ExcludeItemTypes =
+ [
+ BaseItemKind.MusicVideo,
+ BaseItemKind.Audio,
+ BaseItemKind.MusicAlbum,
+ BaseItemKind.MusicArtist
+ ];
+
+ var counts = new TaggedItemCounts();
+
+ query.IncludeItemTypes = [BaseItemKind.Episode];
+ counts.EpisodeCount = LibraryManager.GetCount(query);
+
+ query.IncludeItemTypes = [BaseItemKind.Movie];
+ counts.MovieCount = LibraryManager.GetCount(query);
+
+ query.IncludeItemTypes = [BaseItemKind.LiveTvProgram];
+ counts.ProgramCount = LibraryManager.GetCount(query);
+
+ query.IncludeItemTypes = [BaseItemKind.Series];
+ counts.SeriesCount = LibraryManager.GetCount(query);
+
+ query.IncludeItemTypes = [BaseItemKind.Trailer];
+ counts.TrailerCount = LibraryManager.GetCount(query);
+
+ return counts;
+ }
+
public static string GetPath(string name)
{
return GetPath(name, true);