aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities')
-rw-r--r--MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs6
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs24
-rw-r--r--MediaBrowser.Controller/Entities/CollectionFolder.cs9
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs66
-rw-r--r--MediaBrowser.Controller/Entities/ICollectionFolder.cs14
-rw-r--r--MediaBrowser.Controller/Entities/IHasProgramAttributes.cs1
-rw-r--r--MediaBrowser.Controller/Entities/InternalItemsQuery.cs9
-rw-r--r--MediaBrowser.Controller/Entities/Movies/BoxSet.cs9
-rw-r--r--MediaBrowser.Controller/Entities/Movies/Movie.cs13
-rw-r--r--MediaBrowser.Controller/Entities/TV/Episode.cs2
-rw-r--r--MediaBrowser.Controller/Entities/UserRootFolder.cs13
-rw-r--r--MediaBrowser.Controller/Entities/UserView.cs6
-rw-r--r--MediaBrowser.Controller/Entities/UserViewBuilder.cs173
13 files changed, 186 insertions, 159 deletions
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
index 8a77d7616..807beee52 100644
--- a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
+++ b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs
@@ -54,6 +54,12 @@ namespace MediaBrowser.Controller.Entities.Audio
get { return AlbumArtists.FirstOrDefault(); }
}
+ [IgnoreDataMember]
+ public override bool SupportsPeople
+ {
+ get { return false; }
+ }
+
public List<string> AlbumArtists { get; set; }
/// <summary>
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index d9dbf265f..594b5ca93 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -142,7 +142,7 @@ namespace MediaBrowser.Controller.Entities
public virtual string Path { get; set; }
[IgnoreDataMember]
- protected internal bool IsOffline { get; set; }
+ public bool IsOffline { get; set; }
/// <summary>
/// Returns the folder containing the item.
@@ -419,6 +419,10 @@ namespace MediaBrowser.Controller.Entities
return _sortName ?? (_sortName = CreateSortName());
}
+ set
+ {
+ _sortName = value;
+ }
}
public string GetInternalMetadataPath()
@@ -485,6 +489,7 @@ namespace MediaBrowser.Controller.Entities
/// Gets or sets the parent.
/// </summary>
/// <value>The parent.</value>
+ [IgnoreDataMember]
public Folder Parent
{
get
@@ -1115,6 +1120,23 @@ namespace MediaBrowser.Controller.Entities
return value.Value <= maxAllowedRating.Value;
}
+ public int? GetParentalRatingValue()
+ {
+ var rating = CustomRatingForComparison;
+
+ if (string.IsNullOrWhiteSpace(rating))
+ {
+ rating = OfficialRatingForComparison;
+ }
+
+ if (string.IsNullOrWhiteSpace(rating))
+ {
+ return null;
+ }
+
+ return LocalizationManager.GetRatingLevel(rating);
+ }
+
private bool IsVisibleViaTags(User user)
{
var hasTags = this as IHasTags;
diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs
index 3a610be64..8821f35c8 100644
--- a/MediaBrowser.Controller/Entities/CollectionFolder.cs
+++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs
@@ -35,6 +35,15 @@ namespace MediaBrowser.Controller.Entities
}
}
+ [IgnoreDataMember]
+ protected override bool SupportsShortcutChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
+
public override bool CanDelete()
{
return false;
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index 22efb09e1..c3ac77328 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -1,7 +1,6 @@
using MediaBrowser.Common.Progress;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
-using MediaBrowser.Controller.Localization;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Entities;
@@ -14,7 +13,6 @@ using System.Linq;
using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
-using MediaBrowser.Model.Users;
namespace MediaBrowser.Controller.Entities
{
@@ -50,7 +48,7 @@ namespace MediaBrowser.Controller.Entities
[IgnoreDataMember]
public virtual bool IsPreSorted
{
- get { return false; }
+ get { return ConfigurationManager.Configuration.EnableWindowsShortcuts; }
}
/// <summary>
@@ -122,7 +120,7 @@ namespace MediaBrowser.Controller.Entities
[IgnoreDataMember]
protected virtual bool SupportsShortcutChildren
{
- get { return true; }
+ get { return false; }
}
/// <summary>
@@ -176,7 +174,7 @@ namespace MediaBrowser.Controller.Entities
protected void AddChildInternal(BaseItem child)
{
var actualChildren = ActualChildren;
-
+
lock (_childrenSyncLock)
{
var newChildren = actualChildren.ToList();
@@ -1070,7 +1068,7 @@ namespace MediaBrowser.Controller.Entities
{
var changesFound = false;
- if (SupportsShortcutChildren && LocationType == LocationType.FileSystem)
+ if (LocationType == LocationType.FileSystem)
{
if (RefreshLinkedChildren(fileSystemChildren))
{
@@ -1092,37 +1090,43 @@ namespace MediaBrowser.Controller.Entities
var currentManualLinks = LinkedChildren.Where(i => i.Type == LinkedChildType.Manual).ToList();
var currentShortcutLinks = LinkedChildren.Where(i => i.Type == LinkedChildType.Shortcut).ToList();
- var newShortcutLinks = fileSystemChildren
- .Where(i => (i.Attributes & FileAttributes.Directory) != FileAttributes.Directory && FileSystem.IsShortcut(i.FullName))
- .Select(i =>
- {
- try
+ List<LinkedChild> newShortcutLinks;
+
+ if (SupportsShortcutChildren)
+ {
+ newShortcutLinks = fileSystemChildren
+ .Where(i => (i.Attributes & FileAttributes.Directory) != FileAttributes.Directory && FileSystem.IsShortcut(i.FullName))
+ .Select(i =>
{
- Logger.Debug("Found shortcut at {0}", i.FullName);
+ try
+ {
+ Logger.Debug("Found shortcut at {0}", i.FullName);
- var resolvedPath = FileSystem.ResolveShortcut(i.FullName);
+ var resolvedPath = FileSystem.ResolveShortcut(i.FullName);
- if (!string.IsNullOrEmpty(resolvedPath))
- {
- return new LinkedChild
+ if (!string.IsNullOrEmpty(resolvedPath))
{
- Path = resolvedPath,
- Type = LinkedChildType.Shortcut
- };
- }
+ return new LinkedChild
+ {
+ Path = resolvedPath,
+ Type = LinkedChildType.Shortcut
+ };
+ }
- Logger.Error("Error resolving shortcut {0}", i.FullName);
+ Logger.Error("Error resolving shortcut {0}", i.FullName);
- return null;
- }
- catch (IOException ex)
- {
- Logger.ErrorException("Error resolving shortcut {0}", ex, i.FullName);
- return null;
- }
- })
- .Where(i => i != null)
- .ToList();
+ return null;
+ }
+ catch (IOException ex)
+ {
+ Logger.ErrorException("Error resolving shortcut {0}", ex, i.FullName);
+ return null;
+ }
+ })
+ .Where(i => i != null)
+ .ToList();
+ }
+ else { newShortcutLinks = new List<LinkedChild>(); }
if (!newShortcutLinks.SequenceEqual(currentShortcutLinks, new LinkedChildComparer()))
{
diff --git a/MediaBrowser.Controller/Entities/ICollectionFolder.cs b/MediaBrowser.Controller/Entities/ICollectionFolder.cs
index f46d7ed6f..b55ca0a17 100644
--- a/MediaBrowser.Controller/Entities/ICollectionFolder.cs
+++ b/MediaBrowser.Controller/Entities/ICollectionFolder.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.Linq;
namespace MediaBrowser.Controller.Entities
{
@@ -14,4 +15,17 @@ namespace MediaBrowser.Controller.Entities
Guid Id { get; }
IEnumerable<string> PhysicalLocations { get; }
}
+
+ public static class CollectionFolderExtensions
+ {
+ public static string GetViewType(this ICollectionFolder folder, User user)
+ {
+ if (user.Configuration.PlainFolderViews.Contains(folder.Id.ToString("N"), StringComparer.OrdinalIgnoreCase))
+ {
+ return null;
+ }
+
+ return folder.CollectionType;
+ }
+ }
}
diff --git a/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs b/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs
index 391c8f7a7..9938a4489 100644
--- a/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs
+++ b/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs
@@ -11,6 +11,7 @@ namespace MediaBrowser.Controller.Entities
bool IsKids { get; set; }
bool IsRepeat { get; set; }
bool? IsHD { get; set; }
+ bool IsSeries { get; set; }
bool IsLive { get; set; }
bool IsPremiere { get; set; }
ProgramAudio? Audio { get; set; }
diff --git a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs
index c5e60a73d..0af4972f7 100644
--- a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs
+++ b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs
@@ -1,6 +1,6 @@
-using System.Collections.Generic;
-using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.Entities;
using System;
+using System.Collections.Generic;
namespace MediaBrowser.Controller.Entities
{
@@ -40,6 +40,7 @@ namespace MediaBrowser.Controller.Entities
public string NameStartsWithOrGreater { get; set; }
public string NameStartsWith { get; set; }
public string NameLessThan { get; set; }
+ public string NameContains { get; set; }
public string Person { get; set; }
public string[] PersonIds { get; set; }
@@ -93,7 +94,11 @@ namespace MediaBrowser.Controller.Entities
public string[] ChannelIds { get; set; }
internal List<Guid> ItemIdsFromPersonFilters { get; set; }
+ public int? MaxParentalRating { get; set; }
+ public bool? IsCurrentSchema { get; set; }
+ public bool? HasDeadParentId { get; set; }
+
public InternalItemsQuery()
{
Tags = new string[] { };
diff --git a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
index 02e9d4cf9..9317f688f 100644
--- a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
+++ b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
@@ -74,6 +74,15 @@ namespace MediaBrowser.Controller.Entities.Movies
}
}
+ [IgnoreDataMember]
+ protected override bool SupportsShortcutChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
+
public override bool IsAuthorizedToDelete(User user)
{
return true;
diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs
index fc07f6778..083ec0cb4 100644
--- a/MediaBrowser.Controller/Entities/Movies/Movie.cs
+++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs
@@ -100,16 +100,23 @@ namespace MediaBrowser.Controller.Entities.Movies
/// <returns>System.String.</returns>
protected override string CreateUserDataKey()
{
- var key = this.GetProviderId(MetadataProviders.Tmdb);
+ var key = GetMovieUserDataKey(this);
if (string.IsNullOrWhiteSpace(key))
{
- key = this.GetProviderId(MetadataProviders.Imdb);
+ key = base.CreateUserDataKey();
}
+ return key;
+ }
+
+ public static string GetMovieUserDataKey(BaseItem movie)
+ {
+ var key = movie.GetProviderId(MetadataProviders.Tmdb);
+
if (string.IsNullOrWhiteSpace(key))
{
- key = base.CreateUserDataKey();
+ key = movie.GetProviderId(MetadataProviders.Imdb);
}
return key;
diff --git a/MediaBrowser.Controller/Entities/TV/Episode.cs b/MediaBrowser.Controller/Entities/TV/Episode.cs
index 8f5b8f6cf..5163c3de4 100644
--- a/MediaBrowser.Controller/Entities/TV/Episode.cs
+++ b/MediaBrowser.Controller/Entities/TV/Episode.cs
@@ -150,7 +150,7 @@ namespace MediaBrowser.Controller.Entities.TV
{
var series = Series;
- if (ParentIndexNumber.HasValue)
+ if (series != null && ParentIndexNumber.HasValue)
{
var findNumber = ParentIndexNumber.Value;
diff --git a/MediaBrowser.Controller/Entities/UserRootFolder.cs b/MediaBrowser.Controller/Entities/UserRootFolder.cs
index b065ae171..a78beb645 100644
--- a/MediaBrowser.Controller/Entities/UserRootFolder.cs
+++ b/MediaBrowser.Controller/Entities/UserRootFolder.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Controller.Providers;
+using System.Runtime.Serialization;
+using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Library;
using MediaBrowser.Model.Querying;
@@ -36,6 +37,16 @@ namespace MediaBrowser.Controller.Entities
return PostFilterAndSort(result.Where(filter), query);
}
+ [IgnoreDataMember]
+ protected override bool SupportsShortcutChildren
+ {
+ get
+ {
+ return true;
+ }
+ }
+
+ [IgnoreDataMember]
public override bool IsPreSorted
{
get
diff --git a/MediaBrowser.Controller/Entities/UserView.cs b/MediaBrowser.Controller/Entities/UserView.cs
index dad6de01a..488e54cc3 100644
--- a/MediaBrowser.Controller/Entities/UserView.cs
+++ b/MediaBrowser.Controller/Entities/UserView.cs
@@ -1,10 +1,10 @@
-using System.Runtime.Serialization;
-using MediaBrowser.Controller.Playlists;
+using MediaBrowser.Controller.Playlists;
using MediaBrowser.Controller.TV;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Querying;
using System;
using System.Collections.Generic;
+using System.Runtime.Serialization;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Entities
@@ -15,7 +15,7 @@ namespace MediaBrowser.Controller.Entities
public Guid ParentId { get; set; }
public Guid? UserId { get; set; }
-
+
public static ITVSeriesManager TVSeriesManager;
public static IPlaylistManager PlaylistManager;
diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
index b2d359277..cee5dadd2 100644
--- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs
+++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
@@ -66,7 +66,7 @@ namespace MediaBrowser.Controller.Entities
{
var result = await _channelManager.GetChannelsInternal(new ChannelQuery
{
- UserId = user.Id.ToString("N"),
+ UserId = user == null ? null : user.Id.ToString("N"),
Limit = query.Limit,
StartIndex = query.StartIndex
@@ -264,10 +264,7 @@ namespace MediaBrowser.Controller.Entities
private async Task<QueryResult<BaseItem>> FindPlaylists(Folder parent, User user, InternalItemsQuery query)
{
- var collectionFolders = user.RootFolder.GetChildren(user, true).Select(i => i.Id).ToList();
-
- var list = _playlistManager.GetPlaylists(user.Id.ToString("N"))
- .Where(i => i.GetChildren(user, true).Any(media => _libraryManager.GetCollectionFolders(media).Select(c => c.Id).Any(collectionFolders.Contains)));
+ var list = _playlistManager.GetPlaylists(user.Id.ToString("N"));
return GetResult(list, parent, query);
}
@@ -288,14 +285,14 @@ namespace MediaBrowser.Controller.Entities
var list = new List<BaseItem>();
- list.Add(await GetUserView(SpecialFolder.MusicLatest, user, "0", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicPlaylists, user, "1", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicAlbums, user, "2", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicAlbumArtists, user, "3", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicLatest, "0", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicPlaylists, "1", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicAlbums, "2", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicAlbumArtists, "3", parent).ConfigureAwait(false));
//list.Add(await GetUserView(SpecialFolder.MusicArtists, user, "4", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicSongs, user, "5", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicGenres, user, "6", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicFavorites, user, "7", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicSongs, "5", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicGenres, "6", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicFavorites, "7", parent).ConfigureAwait(false));
return GetResult(list, parent, query);
}
@@ -304,9 +301,9 @@ namespace MediaBrowser.Controller.Entities
{
var list = new List<BaseItem>();
- list.Add(await GetUserView(SpecialFolder.MusicFavoriteAlbums, user, "0", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicFavoriteArtists, user, "1", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MusicFavoriteSongs, user, "2", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicFavoriteAlbums, "0", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicFavoriteArtists, "1", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MusicFavoriteSongs, "2", parent).ConfigureAwait(false));
return GetResult(list, parent, query);
}
@@ -332,7 +329,7 @@ namespace MediaBrowser.Controller.Entities
})
.Where(i => i != null)
- .Select(i => GetUserView(i.Name, SpecialFolder.MusicGenre, user, i.SortName, parent));
+ .Select(i => GetUserView(i.Name, SpecialFolder.MusicGenre, i.SortName, parent));
var genres = await Task.WhenAll(tasks).ConfigureAwait(false);
@@ -344,94 +341,42 @@ namespace MediaBrowser.Controller.Entities
var items = GetRecursiveChildren(queryParent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
.Where(i => i.Genres.Contains(displayParent.Name, StringComparer.OrdinalIgnoreCase))
- .OfType<IHasAlbumArtist>()
- .SelectMany(i => i.AlbumArtists)
- .DistinctNames()
- .Select(i =>
- {
- try
- {
- return _libraryManager.GetArtist(i);
- }
- catch
- {
- // Already logged at lower levels
- return null;
- }
- })
- .Where(i => i != null);
+ .OfType<IHasAlbumArtist>();
- return GetResult(items, queryParent, query);
+ var artists = _libraryManager.GetAlbumArtists(items);
+
+ return GetResult(artists, queryParent, query);
}
private QueryResult<BaseItem> GetMusicAlbumArtists(Folder parent, User user, InternalItemsQuery query)
{
- var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
+ var items = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
- .OfType<IHasAlbumArtist>()
- .SelectMany(i => i.AlbumArtists)
- .DistinctNames()
- .Select(i =>
- {
- try
- {
- return _libraryManager.GetArtist(i);
- }
- catch
- {
- // Already logged at lower levels
- return null;
- }
- })
- .Where(i => i != null);
+ .OfType<IHasAlbumArtist>();
+
+ var artists = _libraryManager.GetAlbumArtists(items);
return GetResult(artists, parent, query);
}
private QueryResult<BaseItem> GetMusicArtists(Folder parent, User user, InternalItemsQuery query)
{
- var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
+ var items = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
- .OfType<IHasArtist>()
- .SelectMany(i => i.Artists)
- .DistinctNames()
- .Select(i =>
- {
- try
- {
- return _libraryManager.GetArtist(i);
- }
- catch
- {
- // Already logged at lower levels
- return null;
- }
- })
- .Where(i => i != null);
+ .OfType<IHasArtist>();
+
+ var artists = _libraryManager.GetArtists(items);
return GetResult(artists, parent, query);
}
private QueryResult<BaseItem> GetFavoriteArtists(Folder parent, User user, InternalItemsQuery query)
{
- var artists = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
+ var items = GetRecursiveChildren(parent, user, new[] { CollectionType.Music, CollectionType.MusicVideos })
.Where(i => !i.IsFolder)
- .OfType<IHasAlbumArtist>()
- .SelectMany(i => i.AlbumArtists)
- .DistinctNames()
- .Select(i =>
- {
- try
- {
- return _libraryManager.GetArtist(i);
- }
- catch
- {
- // Already logged at lower levels
- return null;
- }
- })
- .Where(i => i != null && _userDataManager.GetUserData(user.Id, i.GetUserDataKey()).IsFavorite);
+ .OfType<IHasAlbumArtist>();
+
+ var artists = _libraryManager.GetAlbumArtists(items).Where(i => _userDataManager.GetUserData(user.Id, i.GetUserDataKey()).IsFavorite);
return GetResult(artists, parent, query);
}
@@ -498,12 +443,12 @@ namespace MediaBrowser.Controller.Entities
var list = new List<BaseItem>();
- list.Add(await GetUserView(SpecialFolder.MovieResume, user, "0", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MovieLatest, user, "1", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MovieMovies, user, "2", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MovieCollections, user, "3", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MovieFavorites, user, "4", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.MovieGenres, user, "5", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MovieResume, "0", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MovieLatest, "1", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MovieMovies, "2", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MovieCollections, "3", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MovieFavorites, "4", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.MovieGenres, "5", parent).ConfigureAwait(false));
return GetResult(list, parent, query);
}
@@ -609,7 +554,7 @@ namespace MediaBrowser.Controller.Entities
})
.Where(i => i != null)
- .Select(i => GetUserView(i.Name, SpecialFolder.MovieGenre, user, i.SortName, parent));
+ .Select(i => GetUserView(i.Name, SpecialFolder.MovieGenre, i.SortName, parent));
var genres = await Task.WhenAll(tasks).ConfigureAwait(false);
@@ -671,13 +616,13 @@ namespace MediaBrowser.Controller.Entities
var list = new List<BaseItem>();
- list.Add(await GetUserView(SpecialFolder.TvResume, user, "0", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.TvNextUp, user, "1", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.TvLatest, user, "2", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.TvShowSeries, user, "3", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.TvFavoriteSeries, user, "4", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.TvFavoriteEpisodes, user, "5", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.TvGenres, user, "6", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvResume, "0", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvNextUp, "1", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvLatest, "2", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvShowSeries, "3", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvFavoriteSeries, "4", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvFavoriteEpisodes, "5", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.TvGenres, "6", parent).ConfigureAwait(false));
return GetResult(list, parent, query);
}
@@ -692,11 +637,11 @@ namespace MediaBrowser.Controller.Entities
var list = new List<BaseItem>();
- list.Add(await GetUserView(SpecialFolder.LatestGames, user, "0", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.RecentlyPlayedGames, user, "1", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.GameFavorites, user, "2", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.GameSystems, user, "3", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.GameGenres, user, "4", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.LatestGames, "0", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.RecentlyPlayedGames, "1", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.GameFavorites, "2", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.GameSystems, "3", parent).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.GameGenres, "4", parent).ConfigureAwait(false));
return GetResult(list, parent, query);
}
@@ -794,7 +739,7 @@ namespace MediaBrowser.Controller.Entities
})
.Where(i => i != null)
- .Select(i => GetUserView(i.Name, SpecialFolder.TvGenre, user, i.SortName, parent));
+ .Select(i => GetUserView(i.Name, SpecialFolder.TvGenre, i.SortName, parent));
var genres = await Task.WhenAll(tasks).ConfigureAwait(false);
@@ -846,7 +791,7 @@ namespace MediaBrowser.Controller.Entities
})
.Where(i => i != null)
- .Select(i => GetUserView(i.Name, SpecialFolder.GameGenre, user, i.SortName, parent));
+ .Select(i => GetUserView(i.Name, SpecialFolder.GameGenre, i.SortName, parent));
var genres = await Task.WhenAll(tasks).ConfigureAwait(false);
@@ -1926,26 +1871,20 @@ namespace MediaBrowser.Controller.Entities
var list = new List<BaseItem>();
//list.Add(await GetUserSubView(SpecialFolder.LiveTvNowPlaying, user, "0", parent).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.LiveTvChannels, user, string.Empty, user.RootFolder).ConfigureAwait(false));
- list.Add(await GetUserView(SpecialFolder.LiveTvRecordingGroups, user, string.Empty, user.RootFolder).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.LiveTvChannels, string.Empty, user.RootFolder).ConfigureAwait(false));
+ list.Add(await GetUserView(SpecialFolder.LiveTvRecordingGroups, string.Empty, user.RootFolder).ConfigureAwait(false));
return GetResult(list, queryParent, query);
}
- private async Task<UserView> GetUserView(string name, string type, User user, string sortName, BaseItem parent)
+ private Task<UserView> GetUserView(string name, string type, string sortName, BaseItem parent)
{
- var view = await _userViewManager.GetUserSubView(name, parent.Id.ToString("N"), type, user, sortName, CancellationToken.None)
- .ConfigureAwait(false);
-
- return view;
+ return _userViewManager.GetUserSubView(name, parent.Id.ToString("N"), type, sortName, CancellationToken.None);
}
- private async Task<UserView> GetUserView(string type, User user, string sortName, BaseItem parent)
+ private Task<UserView> GetUserView(string type, string sortName, BaseItem parent)
{
- var view = await _userViewManager.GetUserSubView(parent.Id.ToString("N"), type, user, sortName, CancellationToken.None)
- .ConfigureAwait(false);
-
- return view;
+ return _userViewManager.GetUserSubView(parent.Id.ToString("N"), type, sortName, CancellationToken.None);
}
public static bool IsYearMismatched(BaseItem item, ILibraryManager libraryManager)