aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-02-23 15:35:58 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-02-23 15:35:58 -0500
commit3d4a3c9cb8f17357eb71b58313724f440b5e414c (patch)
tree50ba27b488bb0e8b86c296323bb8af00ac4a5008
parent88b4a8f6e63c8007320bcbfd61f3a718c4793466 (diff)
change cast icon state appropriately
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs24
-rw-r--r--MediaBrowser.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs10
-rw-r--r--MediaBrowser.ServerApplication/ApplicationHost.cs18
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>