aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-11-02 12:25:01 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-11-02 12:25:01 -0500
commitfbf8d27637a0b3804cf31665425be372420097a5 (patch)
tree423195f44950bdd256f1e0fa7ebb41dc5df9630a /MediaBrowser.Controller
parenta5f2e21ca4feeacfa5afa88d20ae90f51b794593 (diff)
update channel db
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs17
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs41
-rw-r--r--MediaBrowser.Controller/Entities/UserView.cs12
-rw-r--r--MediaBrowser.Controller/Entities/UserViewBuilder.cs8
-rw-r--r--MediaBrowser.Controller/Persistence/IItemRepository.cs7
5 files changed, 54 insertions, 31 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index f14e096167..798f1b7bb7 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -1154,6 +1154,23 @@ namespace MediaBrowser.Controller.Entities
public int? GetParentalRatingValue()
{
+ var rating = CustomRating;
+
+ if (string.IsNullOrWhiteSpace(rating))
+ {
+ rating = OfficialRating;
+ }
+
+ if (string.IsNullOrWhiteSpace(rating))
+ {
+ return null;
+ }
+
+ return LocalizationManager.GetRatingLevel(rating);
+ }
+
+ public int? GetInheritedParentalRatingValue()
+ {
var rating = CustomRatingForComparison;
if (string.IsNullOrWhiteSpace(rating))
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index e08eda1acb..4b30e845b7 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -468,34 +468,25 @@ namespace MediaBrowser.Controller.Entities
{
BaseItem currentChild;
- if (currentChildren.TryGetValue(child.Id, out currentChild))
+ if (currentChildren.TryGetValue(child.Id, out currentChild) && IsValidFromResolver(currentChild, child))
{
- if (IsValidFromResolver(currentChild, child))
+ var currentChildLocationType = currentChild.LocationType;
+ if (currentChildLocationType != LocationType.Remote &&
+ currentChildLocationType != LocationType.Virtual)
{
- var currentChildLocationType = currentChild.LocationType;
- if (currentChildLocationType != LocationType.Remote &&
- currentChildLocationType != LocationType.Virtual)
- {
- currentChild.DateModified = child.DateModified;
- }
-
- await UpdateIsOffline(currentChild, false).ConfigureAwait(false);
- validChildren.Add(currentChild);
- }
- else
- {
- child.SetParent(this);
- newItems.Add(child);
- validChildren.Add(child);
+ currentChild.DateModified = child.DateModified;
}
+
+ await UpdateIsOffline(currentChild, false).ConfigureAwait(false);
+ validChildren.Add(currentChild);
+
+ continue;
}
- else
- {
- // Brand new item - needs to be added
- child.SetParent(this);
- newItems.Add(child);
- validChildren.Add(child);
- }
+
+ // Brand new item - needs to be added
+ child.SetParent(this);
+ newItems.Add(child);
+ validChildren.Add(child);
}
// If any items were added or removed....
@@ -531,6 +522,8 @@ namespace MediaBrowser.Controller.Entities
foreach (var item in actualRemovals)
{
+ Logger.Debug("Removed item: " + item.Path);
+
item.SetParent(null);
item.IsOffline = false;
await LibraryManager.DeleteItem(item, new DeleteOptions { DeleteFileLocation = false }).ConfigureAwait(false);
diff --git a/MediaBrowser.Controller/Entities/UserView.cs b/MediaBrowser.Controller/Entities/UserView.cs
index 76188ce58e..4e3b587783 100644
--- a/MediaBrowser.Controller/Entities/UserView.cs
+++ b/MediaBrowser.Controller/Entities/UserView.cs
@@ -6,6 +6,7 @@ using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Threading.Tasks;
+using System.Linq;
namespace MediaBrowser.Controller.Entities
{
@@ -105,7 +106,9 @@ namespace MediaBrowser.Controller.Entities
CollectionType.Photos,
CollectionType.Playlists,
CollectionType.BoxSets,
- CollectionType.MusicVideos
+ CollectionType.MusicVideos,
+ CollectionType.Games,
+ CollectionType.Music
};
var collectionFolder = folder as ICollectionFolder;
@@ -136,6 +139,13 @@ namespace MediaBrowser.Controller.Entities
return standaloneTypes.Contains(collectionFolder.CollectionType ?? string.Empty);
}
+ public static bool IsEligibleForEnhancedView(string viewType)
+ {
+ var types = new[] { CollectionType.Movies, CollectionType.TvShows, CollectionType.Music };
+
+ return types.Contains(viewType ?? string.Empty, StringComparer.OrdinalIgnoreCase);
+ }
+
[IgnoreDataMember]
public override bool SupportsPeople
{
diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
index f5800ce818..ed81e2d739 100644
--- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs
+++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
@@ -120,26 +120,22 @@ namespace MediaBrowser.Controller.Entities
return await GetLiveTvView(queryParent, user, query).ConfigureAwait(false);
}
+ case CollectionType.Photos:
case CollectionType.Books:
case CollectionType.HomeVideos:
+ case CollectionType.Games:
case CollectionType.MusicVideos:
return GetResult(queryParent.GetChildren(user, true), queryParent, query);
case CollectionType.Folders:
return GetResult(user.RootFolder.GetChildren(user, true), queryParent, query);
- case CollectionType.Games:
- return await GetGameView(user, queryParent, query).ConfigureAwait(false);
-
case CollectionType.Playlists:
return await GetPlaylistsView(queryParent, user, query).ConfigureAwait(false);
case CollectionType.BoxSets:
return await GetBoxsetView(queryParent, user, query).ConfigureAwait(false);
- case CollectionType.Photos:
- return await GetPhotosView(queryParent, user, query).ConfigureAwait(false);
-
case CollectionType.TvShows:
return await GetTvView(queryParent, user, query).ConfigureAwait(false);
diff --git a/MediaBrowser.Controller/Persistence/IItemRepository.cs b/MediaBrowser.Controller/Persistence/IItemRepository.cs
index 0b1c9c3e04..533d66b950 100644
--- a/MediaBrowser.Controller/Persistence/IItemRepository.cs
+++ b/MediaBrowser.Controller/Persistence/IItemRepository.cs
@@ -183,6 +183,13 @@ namespace MediaBrowser.Controller.Persistence
/// <param name="query">The query.</param>
/// <returns>List&lt;BaseItem&gt;.</returns>
IEnumerable<BaseItem> GetItemList(InternalItemsQuery query);
+
+ /// <summary>
+ /// Updates the inherited values.
+ /// </summary>
+ /// <param name="cancellationToken">The cancellation token.</param>
+ /// <returns>Task.</returns>
+ Task UpdateInheritedValues(CancellationToken cancellationToken);
}
}