diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-05-23 12:43:24 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-05-23 12:43:24 -0400 |
| commit | 2f93d4498bc50eb36546a94d2ee3c4a0ab502480 (patch) | |
| tree | c347b284e5faca4fffb92ed75f2d5b5ef3d9622e /MediaBrowser.Controller/Entities | |
| parent | 54cf0da75826d641b28a34afece7a4cb0eaaaec2 (diff) | |
update query fields
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/Folder.cs | 9 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/InternalItemsQuery.cs | 19 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/UserViewBuilder.cs | 36 |
3 files changed, 43 insertions, 21 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index b18d47a65..f83b2f7bd 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -672,7 +672,7 @@ namespace MediaBrowser.Controller.Entities { return ItemRepository.GetItemList(new InternalItemsQuery { - ParentId = Id, + Parent = this, GroupByPresentationUniqueKey = false, DtoOptions = new DtoOptions(true) }); @@ -692,7 +692,7 @@ namespace MediaBrowser.Controller.Entities { Recursive = false, Limit = 0, - ParentId = Id, + Parent = this, DtoOptions = new DtoOptions(false) { EnableImages = false @@ -743,7 +743,10 @@ namespace MediaBrowser.Controller.Entities if (!(this is UserRootFolder) && !(this is AggregateFolder)) { - query.ParentId = query.ParentId ?? Id; + if (!query.ParentId.HasValue) + { + query.Parent = this; + } } if (RequiresPostFiltering2(query)) diff --git a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs index d3220f6c1..2186716d7 100644 --- a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs +++ b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs @@ -126,9 +126,27 @@ namespace MediaBrowser.Controller.Entities public bool? IsVirtualItem { get; set; } public Guid? ParentId { get; set; } + public string ParentType { get; set; } public string[] AncestorIds { get; set; } public string[] TopParentIds { get; set; } + public BaseItem Parent + { + set + { + if (value == null) + { + ParentId = null; + ParentType = null; + } + else + { + ParentId = value.Id; + ParentType = value.GetType().Name; + } + } + } + public string[] PresetViews { get; set; } public SourceType[] SourceTypes { get; set; } public SourceType[] ExcludeSourceTypes { get; set; } @@ -156,6 +174,7 @@ namespace MediaBrowser.Controller.Entities public DateTime? MinDateCreated { get; set; } public DateTime? MinDateLastSaved { get; set; } + public DateTime? MinDateLastSavedForUser { get; set; } public DtoOptions DtoOptions { get; set; } public int MinSimilarityScore { get; set; } diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs index 801d1d783..b2edb3da8 100644 --- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs +++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs @@ -130,7 +130,7 @@ namespace MediaBrowser.Controller.Entities if (query.Recursive) { query.Recursive = true; - query.ParentId = queryParent.Id; + query.Parent = queryParent; query.SetUser(user); return _libraryManager.GetItemsResult(query); @@ -355,7 +355,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetMusicPlaylists(Folder parent, User user, InternalItemsQuery query) { - query.ParentId = null; + query.Parent = null; query.IncludeItemTypes = new[] { typeof(Playlist).Name }; query.SetUser(user); query.Recursive = true; @@ -366,7 +366,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetMusicAlbums(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IncludeItemTypes = new[] { typeof(MusicAlbum).Name }; @@ -377,7 +377,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetMusicSongs(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IncludeItemTypes = new[] { typeof(Audio.Audio).Name }; @@ -405,7 +405,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetFavoriteSongs(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IsFavorite = true; query.IncludeItemTypes = new[] { typeof(Audio.Audio).Name }; @@ -416,7 +416,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetFavoriteAlbums(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IsFavorite = true; query.IncludeItemTypes = new[] { typeof(MusicAlbum).Name }; @@ -466,7 +466,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetFavoriteMovies(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IsFavorite = true; query.IncludeItemTypes = new[] { typeof(Movie).Name }; @@ -477,7 +477,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetFavoriteSeries(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IsFavorite = true; query.IncludeItemTypes = new[] { typeof(Series).Name }; @@ -488,7 +488,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetFavoriteEpisodes(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IsFavorite = true; query.IncludeItemTypes = new[] { typeof(Episode).Name }; @@ -499,7 +499,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetMovieMovies(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IncludeItemTypes = new[] { typeof(Movie).Name }; @@ -518,7 +518,7 @@ namespace MediaBrowser.Controller.Entities query.SortOrder = SortOrder.Descending; query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.Limit = GetSpecialItemsLimit(); query.IncludeItemTypes = new[] { typeof(Movie).Name }; @@ -532,7 +532,7 @@ namespace MediaBrowser.Controller.Entities query.SortOrder = SortOrder.Descending; query.IsResumable = true; query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.Limit = GetSpecialItemsLimit(); query.IncludeItemTypes = new[] { typeof(Movie).Name }; @@ -586,7 +586,7 @@ namespace MediaBrowser.Controller.Entities private async Task<QueryResult<BaseItem>> GetMovieGenreItems(Folder queryParent, Folder displayParent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = queryParent.Id; + query.Parent = queryParent; query.GenreIds = new[] { displayParent.Id.ToString("N") }; query.SetUser(user); @@ -602,7 +602,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetBoxsetView(Folder parent, User user, InternalItemsQuery query) { - query.ParentId = null; + query.Parent = null; query.IncludeItemTypes = new[] { typeof(BoxSet).Name }; query.SetUser(user); query.Recursive = true; @@ -644,7 +644,7 @@ namespace MediaBrowser.Controller.Entities query.SortOrder = SortOrder.Descending; query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.Limit = GetSpecialItemsLimit(); query.IncludeItemTypes = new[] { typeof(Episode).Name }; @@ -674,7 +674,7 @@ namespace MediaBrowser.Controller.Entities query.SortOrder = SortOrder.Descending; query.IsResumable = true; query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.Limit = GetSpecialItemsLimit(); query.IncludeItemTypes = new[] { typeof(Episode).Name }; @@ -685,7 +685,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetTvSeries(Folder parent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = parent.Id; + query.Parent = parent; query.SetUser(user); query.IncludeItemTypes = new[] { typeof(Series).Name }; @@ -729,7 +729,7 @@ namespace MediaBrowser.Controller.Entities private QueryResult<BaseItem> GetTvGenreItems(Folder queryParent, Folder displayParent, User user, InternalItemsQuery query) { query.Recursive = true; - query.ParentId = queryParent.Id; + query.Parent = queryParent; query.GenreIds = new[] { displayParent.Id.ToString("N") }; query.SetUser(user); |
