diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-02-23 15:35:58 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-02-23 15:35:58 -0500 |
| commit | 3d4a3c9cb8f17357eb71b58313724f440b5e414c (patch) | |
| tree | 50ba27b488bb0e8b86c296323bb8af00ac4a5008 | |
| parent | 88b4a8f6e63c8007320bcbfd61f3a718c4793466 (diff) | |
change cast icon state appropriately
3 files changed, 33 insertions, 19 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index b56abcc80..e682a0d2f 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -375,6 +375,28 @@ namespace MediaBrowser.Controller.Entities } } + private Dictionary<Guid, BaseItem> GetActualChildrenDictionary() + { + var dictionary = new Dictionary<Guid, BaseItem>(); + + foreach (var child in ActualChildren) + { + var id = child.Id; + if (dictionary.ContainsKey(id)) + { + Logger.Error( "Found folder containing items with duplicate id. Path: {0}, Child Name: {1}", + Path ?? Name, + child.Path ?? child.Name); + } + else + { + dictionary[id] = child; + } + } + + return dictionary; + } + /// <summary> /// Validates the children internal. /// </summary> @@ -413,7 +435,7 @@ namespace MediaBrowser.Controller.Entities progress.Report(5); //build a dictionary of the current children we have now by Id so we can compare quickly and easily - var currentChildren = ActualChildren.ToDictionary(i => i.Id); + var currentChildren = GetActualChildrenDictionary(); //create a list for our validated children var newItems = new List<BaseItem>(); diff --git a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs b/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs index 3c6cc654f..67c011a1f 100644 --- a/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs +++ b/MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs @@ -1,5 +1,7 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Resolvers; +using MediaBrowser.Model.Entities; +using System; namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio { @@ -30,7 +32,13 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.Audio { if (EntityResolutionHelper.IsAudioFile(args.Path)) { - return new Controller.Entities.Audio.Audio(); + var collectionType = args.GetCollectionType(); + + if (string.Equals(collectionType, CollectionType.Music, StringComparison.OrdinalIgnoreCase) || + string.IsNullOrEmpty(collectionType)) + { + return new Controller.Entities.Audio.Audio(); + } } } diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs index f19d8526c..495b07646 100644 --- a/MediaBrowser.ServerApplication/ApplicationHost.cs +++ b/MediaBrowser.ServerApplication/ApplicationHost.cs @@ -345,26 +345,10 @@ namespace MediaBrowser.ServerApplication foreach (var folder in folders) { - MigrateUserFolder(folder); + Directory.Delete(folder.FullName, true); } } - private void MigrateUserFolder(DirectoryInfo folder) - { - var foldersInDefault = new DirectoryInfo(ApplicationPaths.DefaultUserViewsPath).EnumerateDirectories("*", SearchOption.TopDirectoryOnly).ToList(); - - var foldersInUserView = folder.EnumerateDirectories("*", SearchOption.TopDirectoryOnly).ToList(); - - var foldersToMove = foldersInUserView.Where(i => !foldersInDefault.Any(f => string.Equals(f.Name, i.Name, StringComparison.OrdinalIgnoreCase))).ToList(); - - foreach (var folderToMove in foldersToMove) - { - folderToMove.MoveTo(Path.Combine(ApplicationPaths.DefaultUserViewsPath, folderToMove.Name)); - } - - Directory.Delete(folder.FullName, true); - } - /// <summary> /// Registers resources that classes will depend on /// </summary> |
