aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Server.Implementations')
-rw-r--r--Emby.Server.Implementations/Connect/ConnectManager.cs6
-rw-r--r--Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs8
-rw-r--r--Emby.Server.Implementations/Dto/DtoService.cs5
-rw-r--r--Emby.Server.Implementations/Library/LibraryManager.cs4
-rw-r--r--Emby.Server.Implementations/Library/UserViewManager.cs8
-rw-r--r--Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs2
-rw-r--r--Emby.Server.Implementations/UserViews/DynamicImageProvider.cs4
7 files changed, 18 insertions, 19 deletions
diff --git a/Emby.Server.Implementations/Connect/ConnectManager.cs b/Emby.Server.Implementations/Connect/ConnectManager.cs
index 8c8b7b026..23fafed15 100644
--- a/Emby.Server.Implementations/Connect/ConnectManager.cs
+++ b/Emby.Server.Implementations/Connect/ConnectManager.cs
@@ -925,7 +925,11 @@ namespace Emby.Server.Implementations.Connect
}
_data.PendingAuthorizations = newPendingList;
- CacheData();
+
+ if (!newPendingList.Select(i => i.Id).SequenceEqual(currentPendingList.Select(i => i.Id), StringComparer.Ordinal))
+ {
+ CacheData();
+ }
await RefreshGuestNames(list, refreshImages).ConfigureAwait(false);
}
diff --git a/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs b/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs
index 5bc3a625f..2819a249f 100644
--- a/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs
+++ b/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs
@@ -137,6 +137,11 @@ namespace Emby.Server.Implementations.Data
var numComplete = 0;
var numItems = result.Count;
+ var allLibraryPaths = _libraryManager
+ .GetVirtualFolders()
+ .SelectMany(i => i.Locations)
+ .ToList();
+
foreach (var item in result)
{
cancellationToken.ThrowIfCancellationRequested();
@@ -170,9 +175,8 @@ namespace Emby.Server.Implementations.Data
continue;
}
- if (Folder.IsPathOffline(path))
+ if (Folder.IsPathOffline(path, allLibraryPaths))
{
- await libraryItem.UpdateIsOffline(true).ConfigureAwait(false);
continue;
}
diff --git a/Emby.Server.Implementations/Dto/DtoService.cs b/Emby.Server.Implementations/Dto/DtoService.cs
index 8e6c1263d..06ac7031a 100644
--- a/Emby.Server.Implementations/Dto/DtoService.cs
+++ b/Emby.Server.Implementations/Dto/DtoService.cs
@@ -361,10 +361,7 @@ namespace Emby.Server.Implementations.Dto
if (collectionFolder != null)
{
dto.OriginalCollectionType = collectionFolder.CollectionType;
-
- dto.CollectionType = user == null ?
- collectionFolder.CollectionType :
- collectionFolder.GetViewType(user);
+ dto.CollectionType = collectionFolder.CollectionType;
}
if (fields.Contains(ItemFields.CanDelete))
diff --git a/Emby.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs
index db514af76..71ba465df 100644
--- a/Emby.Server.Implementations/Library/LibraryManager.cs
+++ b/Emby.Server.Implementations/Library/LibraryManager.cs
@@ -2010,7 +2010,7 @@ namespace Emby.Server.Implementations.Library
private string GetContentTypeOverride(string path, bool inherit)
{
- var nameValuePair = ConfigurationManager.Configuration.ContentTypes.FirstOrDefault(i => string.Equals(i.Name, path, StringComparison.OrdinalIgnoreCase) || (inherit && !string.IsNullOrWhiteSpace(i.Name) && _fileSystem.ContainsSubPath(i.Name, path)));
+ var nameValuePair = ConfigurationManager.Configuration.ContentTypes.FirstOrDefault(i => _fileSystem.AreEqual(i.Name, path) || (inherit && !string.IsNullOrWhiteSpace(i.Name) && _fileSystem.ContainsSubPath(i.Name, path)));
if (nameValuePair != null)
{
return nameValuePair.Value;
@@ -3066,7 +3066,7 @@ namespace Emby.Server.Implementations.Library
{
removeList.Add(contentType);
}
- else if (string.Equals(path, contentType.Name, StringComparison.OrdinalIgnoreCase)
+ else if (_fileSystem.AreEqual(path, contentType.Name)
|| _fileSystem.ContainsSubPath(path, contentType.Name))
{
removeList.Add(contentType);
diff --git a/Emby.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs
index 0a8b1c681..f11cbd498 100644
--- a/Emby.Server.Implementations/Library/UserViewManager.cs
+++ b/Emby.Server.Implementations/Library/UserViewManager.cs
@@ -55,8 +55,6 @@ namespace Emby.Server.Implementations.Library
}).ToList();
}
- var plainFolderIds = user.Configuration.PlainFolderViews.Select(i => new Guid(i)).ToList();
-
var groupedFolders = new List<ICollectionFolder>();
var list = new List<Folder>();
@@ -72,12 +70,6 @@ namespace Emby.Server.Implementations.Library
continue;
}
- if (plainFolderIds.Contains(folder.Id) && UserView.IsEligibleForEnhancedView(folderViewType))
- {
- list.Add(folder);
- continue;
- }
-
if (collectionFolder != null && UserView.IsEligibleForGrouping(folder) && user.IsFolderGrouped(folder.Id))
{
groupedFolders.Add(collectionFolder);
diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
index 2e591711b..639621a98 100644
--- a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
+++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
@@ -150,7 +150,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
foreach (var recordingFolder in recordingFolders)
{
var pathsToCreate = recordingFolder.Locations
- .Where(i => !allExistingPaths.Contains(i, StringComparer.OrdinalIgnoreCase))
+ .Where(i => !allExistingPaths.Any(p => _fileSystem.AreEqual(p, i)))
.ToList();
if (pathsToCreate.Count == 0)
diff --git a/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs b/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs
index bef964c6f..b8d03db3d 100644
--- a/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs
+++ b/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs
@@ -151,7 +151,9 @@ namespace Emby.Server.Implementations.UserViews
string[] collectionStripViewTypes =
{
CollectionType.Movies,
- CollectionType.TvShows
+ CollectionType.TvShows,
+ CollectionType.Playlists,
+ CollectionType.Photos
};
return collectionStripViewTypes.Contains(view.ViewType ?? string.Empty);