From dab5003d6bba57c27f4111653b36d39862b5b6fd Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Fri, 12 Jul 2013 15:56:40 -0400 Subject: added collection type --- .../Library/Resolvers/FolderResolver.cs | 16 +++++++++++- .../Library/Resolvers/Movies/MovieResolver.cs | 29 ++++++++++++++-------- 2 files changed, 34 insertions(+), 11 deletions(-) (limited to 'MediaBrowser.Server.Implementations/Library/Resolvers') diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs b/MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs index ebe36c16ef..2b498f32fb 100644 --- a/MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs +++ b/MediaBrowser.Server.Implementations/Library/Resolvers/FolderResolver.cs @@ -1,6 +1,9 @@ using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Resolvers; +using System; +using System.IO; +using System.Linq; namespace MediaBrowser.Server.Implementations.Library.Resolvers { @@ -37,7 +40,10 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers } if (args.IsVf) { - return new CollectionFolder(); + return new CollectionFolder + { + CollectionType = GetCollectionType(args) + }; } return new Folder(); @@ -45,6 +51,14 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers return null; } + + private string GetCollectionType(ItemResolveArgs args) + { + return args.FileSystemChildren + .Where(i => (i.Attributes & FileAttributes.Directory) != FileAttributes.Directory && string.Equals(".collection", i.Extension, StringComparison.OrdinalIgnoreCase)) + .Select(i => Path.GetFileNameWithoutExtension(i.FullName)) + .FirstOrDefault(); + } } /// diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs b/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs index f65e2a39aa..2788050690 100644 --- a/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs +++ b/MediaBrowser.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs @@ -18,10 +18,12 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.Movies public class MovieResolver : BaseVideoResolver