aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs')
-rw-r--r--MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs23
1 files changed, 17 insertions, 6 deletions
diff --git a/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs b/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs
index 8321ab952..cdffadcd7 100644
--- a/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs
+++ b/MediaBrowser.Server.Implementations/UserViews/DynamicImageProvider.cs
@@ -11,8 +11,10 @@ using MediaBrowser.Server.Implementations.Photos;
using MoreLinq;
using System;
using System.Collections.Generic;
+using System.IO;
using System.Linq;
using System.Threading.Tasks;
+using CommonIO;
namespace MediaBrowser.Server.Implementations.UserViews
{
@@ -66,14 +68,14 @@ namespace MediaBrowser.Server.Implementations.UserViews
}
var isUsingCollectionStrip = IsUsingCollectionStrip(view);
- var recursive = isUsingCollectionStrip && !new[] { CollectionType.Playlists, CollectionType.Channels }.Contains(view.ViewType ?? string.Empty, StringComparer.OrdinalIgnoreCase);
+ var recursive = isUsingCollectionStrip && !new[] { CollectionType.Channels, CollectionType.BoxSets, CollectionType.Playlists }.Contains(view.ViewType ?? string.Empty, StringComparer.OrdinalIgnoreCase);
var result = await view.GetItems(new InternalItemsQuery
{
User = (view.UserId.HasValue ? _userManager.GetUserById(view.UserId.Value) : null),
CollapseBoxSetItems = false,
Recursive = recursive,
- ExcludeItemTypes = new[] { "UserView", "CollectionFolder", "Playlist" }
+ ExcludeItemTypes = new[] { "UserView", "CollectionFolder" }
}).ConfigureAwait(false);
@@ -130,7 +132,7 @@ namespace MediaBrowser.Server.Implementations.UserViews
return GetFinalItems(items.Where(i => i.HasImage(ImageType.Primary)).ToList());
}
- public override bool Supports(IHasImages item)
+ protected override bool Supports(IHasImages item)
{
var view = item as UserView;
if (view != null)
@@ -147,20 +149,29 @@ namespace MediaBrowser.Server.Implementations.UserViews
{
CollectionType.Movies,
CollectionType.TvShows,
- CollectionType.Music
+ CollectionType.Music,
+ CollectionType.Games,
+ CollectionType.Books,
+ CollectionType.MusicVideos,
+ CollectionType.HomeVideos,
+ CollectionType.BoxSets,
+ CollectionType.Playlists,
+ CollectionType.Photos
};
return collectionStripViewTypes.Contains(view.ViewType ?? string.Empty);
}
- protected override async Task<bool> CreateImage(IHasImages item, List<BaseItem> itemsWithImages, string outputPath, ImageType imageType, int imageIndex)
+ protected override async Task<string> CreateImage(IHasImages item, List<BaseItem> itemsWithImages, string outputPathWithoutExtension, ImageType imageType, int imageIndex)
{
+ var outputPath = Path.ChangeExtension(outputPathWithoutExtension, ".png");
+
var view = (UserView)item;
if (imageType == ImageType.Primary && IsUsingCollectionStrip(view))
{
if (itemsWithImages.Count == 0)
{
- return false;
+ return null;
}
return await CreateThumbCollage(item, itemsWithImages, outputPath, 960, 540).ConfigureAwait(false);