|
|
@ -5,6 +5,7 @@ using MediaBrowser.Controller.Entities.Movies;
|
|
|
|
using MediaBrowser.Controller.Entities.TV;
|
|
|
|
using MediaBrowser.Controller.Entities.TV;
|
|
|
|
using MediaBrowser.Controller.Library;
|
|
|
|
using MediaBrowser.Controller.Library;
|
|
|
|
using MediaBrowser.Controller.LiveTv;
|
|
|
|
using MediaBrowser.Controller.LiveTv;
|
|
|
|
|
|
|
|
using MediaBrowser.Controller.Playlists;
|
|
|
|
using MediaBrowser.Controller.TV;
|
|
|
|
using MediaBrowser.Controller.TV;
|
|
|
|
using MediaBrowser.Model.Channels;
|
|
|
|
using MediaBrowser.Model.Channels;
|
|
|
|
using MediaBrowser.Model.Entities;
|
|
|
|
using MediaBrowser.Model.Entities;
|
|
|
@ -30,8 +31,9 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
private readonly IUserDataManager _userDataManager;
|
|
|
|
private readonly IUserDataManager _userDataManager;
|
|
|
|
private readonly ITVSeriesManager _tvSeriesManager;
|
|
|
|
private readonly ITVSeriesManager _tvSeriesManager;
|
|
|
|
private readonly ICollectionManager _collectionManager;
|
|
|
|
private readonly ICollectionManager _collectionManager;
|
|
|
|
|
|
|
|
private readonly IPlaylistManager _playlistManager;
|
|
|
|
|
|
|
|
|
|
|
|
public UserViewBuilder(IUserViewManager userViewManager, ILiveTvManager liveTvManager, IChannelManager channelManager, ILibraryManager libraryManager, ILogger logger, IUserDataManager userDataManager, ITVSeriesManager tvSeriesManager, ICollectionManager collectionManager)
|
|
|
|
public UserViewBuilder(IUserViewManager userViewManager, ILiveTvManager liveTvManager, IChannelManager channelManager, ILibraryManager libraryManager, ILogger logger, IUserDataManager userDataManager, ITVSeriesManager tvSeriesManager, ICollectionManager collectionManager, IPlaylistManager playlistManager)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
_userViewManager = userViewManager;
|
|
|
|
_userViewManager = userViewManager;
|
|
|
|
_liveTvManager = liveTvManager;
|
|
|
|
_liveTvManager = liveTvManager;
|
|
|
@ -41,6 +43,7 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
_userDataManager = userDataManager;
|
|
|
|
_userDataManager = userDataManager;
|
|
|
|
_tvSeriesManager = tvSeriesManager;
|
|
|
|
_tvSeriesManager = tvSeriesManager;
|
|
|
|
_collectionManager = collectionManager;
|
|
|
|
_collectionManager = collectionManager;
|
|
|
|
|
|
|
|
_playlistManager = playlistManager;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task<QueryResult<BaseItem>> GetUserItems(Folder queryParent, Folder displayParent, string viewType, InternalItemsQuery query)
|
|
|
|
public async Task<QueryResult<BaseItem>> GetUserItems(Folder queryParent, Folder displayParent, string viewType, InternalItemsQuery query)
|
|
|
@ -115,6 +118,9 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
case CollectionType.Games:
|
|
|
|
case CollectionType.Games:
|
|
|
|
return await GetGameView(user, queryParent, query).ConfigureAwait(false);
|
|
|
|
return await GetGameView(user, queryParent, query).ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case CollectionType.Playlists:
|
|
|
|
|
|
|
|
return await GetPlaylistsView(queryParent, user, query).ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
|
|
case CollectionType.BoxSets:
|
|
|
|
case CollectionType.BoxSets:
|
|
|
|
return await GetBoxsetView(queryParent, user, query).ConfigureAwait(false);
|
|
|
|
return await GetBoxsetView(queryParent, user, query).ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
|
@ -572,6 +578,11 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
return GetResult(items, queryParent, query);
|
|
|
|
return GetResult(items, queryParent, query);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private async Task<QueryResult<BaseItem>> GetPlaylistsView(Folder parent, User user, InternalItemsQuery query)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return GetResult(_playlistManager.GetPlaylists(user.Id.ToString("N")), parent, query);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private async Task<QueryResult<BaseItem>> GetBoxsetView(Folder parent, User user, InternalItemsQuery query)
|
|
|
|
private async Task<QueryResult<BaseItem>> GetBoxsetView(Folder parent, User user, InternalItemsQuery query)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
return GetResult(GetMediaFolders(user).SelectMany(i =>
|
|
|
|
return GetResult(GetMediaFolders(user).SelectMany(i =>
|
|
|
@ -1718,7 +1729,7 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
|
|
|
|
|
|
|
|
var parent = user.RootFolder;
|
|
|
|
var parent = user.RootFolder;
|
|
|
|
|
|
|
|
|
|
|
|
//list.Add(await GetUserView(SpecialFolder.LiveTvNowPlaying, user, "0", parent).ConfigureAwait(false));
|
|
|
|
//list.Add(await GetUserSubView(SpecialFolder.LiveTvNowPlaying, user, "0", parent).ConfigureAwait(false));
|
|
|
|
list.Add(await GetUserView(SpecialFolder.LiveTvChannels, user, string.Empty, parent).ConfigureAwait(false));
|
|
|
|
list.Add(await GetUserView(SpecialFolder.LiveTvChannels, user, string.Empty, parent).ConfigureAwait(false));
|
|
|
|
list.Add(await GetUserView(SpecialFolder.LiveTvRecordingGroups, user, string.Empty, parent).ConfigureAwait(false));
|
|
|
|
list.Add(await GetUserView(SpecialFolder.LiveTvRecordingGroups, user, string.Empty, parent).ConfigureAwait(false));
|
|
|
|
|
|
|
|
|
|
|
@ -1727,7 +1738,7 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
|
|
|
|
|
|
|
|
private async Task<UserView> GetUserView(string name, string type, User user, string sortName, BaseItem parent)
|
|
|
|
private async Task<UserView> GetUserView(string name, string type, User user, string sortName, BaseItem parent)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var view = await _userViewManager.GetUserView(name, parent.Id.ToString("N"), type, user, sortName, CancellationToken.None)
|
|
|
|
var view = await _userViewManager.GetUserSubView(name, parent.Id.ToString("N"), type, user, sortName, CancellationToken.None)
|
|
|
|
.ConfigureAwait(false);
|
|
|
|
.ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
|
|
return view;
|
|
|
|
return view;
|
|
|
@ -1735,7 +1746,7 @@ namespace MediaBrowser.Controller.Entities
|
|
|
|
|
|
|
|
|
|
|
|
private async Task<UserView> GetUserView(string type, User user, string sortName, BaseItem parent)
|
|
|
|
private async Task<UserView> GetUserView(string type, User user, string sortName, BaseItem parent)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var view = await _userViewManager.GetUserView(parent.Id.ToString("N"), type, user, sortName, CancellationToken.None)
|
|
|
|
var view = await _userViewManager.GetUserSubView(parent.Id.ToString("N"), type, user, sortName, CancellationToken.None)
|
|
|
|
.ConfigureAwait(false);
|
|
|
|
.ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
|
|
return view;
|
|
|
|
return view;
|
|
|
|