aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2016-06-15 14:59:27 -0400
committerGitHub <noreply@github.com>2016-06-15 14:59:27 -0400
commitb98d820bd16d3cb2ce4120ac31901a5397b3ea8b (patch)
treea7622f2d944ddabcc5c9e40047304aad4c266a01 /MediaBrowser.Controller
parent4beb41fea8fe8d97220668752b312db84f3fa421 (diff)
parent023b12a798d6bf475a3b20488c1921e7fdb68dc5 (diff)
Merge pull request #1848 from MediaBrowser/dev
update recording format
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs10
-rw-r--r--MediaBrowser.Controller/Entities/TV/Series.cs23
2 files changed, 22 insertions, 11 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index b2788abe0..3c8d8baec 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -1413,14 +1413,14 @@ namespace MediaBrowser.Controller.Entities
return;
}
- var playedQueryResult = GetItems(new InternalItemsQuery(user)
+ var unplayedQueryResult = GetItems(new InternalItemsQuery(user)
{
Recursive = true,
IsFolder = false,
IsVirtualItem = false,
EnableTotalRecordCount = true,
Limit = 0,
- IsPlayed = true
+ IsPlayed = false
}).Result;
@@ -1435,12 +1435,14 @@ namespace MediaBrowser.Controller.Entities
}).Result;
double recursiveItemCount = allItemsQueryResult.TotalRecordCount;
- double playedCount = playedQueryResult.TotalRecordCount;
+ double unplayedCount = unplayedQueryResult.TotalRecordCount;
if (recursiveItemCount > 0)
{
- dto.PlayedPercentage = (playedCount / recursiveItemCount) * 100;
+ var unplayedPercentage = (unplayedCount / recursiveItemCount) * 100;
+ dto.PlayedPercentage = 100 - unplayedPercentage;
dto.Played = dto.PlayedPercentage.Value >= 100;
+ dto.UnplayedItemCount = unplayedQueryResult.TotalRecordCount;
}
}
}
diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs
index cc1378ae1..1f341ba13 100644
--- a/MediaBrowser.Controller/Entities/TV/Series.cs
+++ b/MediaBrowser.Controller/Entities/TV/Series.cs
@@ -186,16 +186,25 @@ namespace MediaBrowser.Controller.Entities.TV
var user = query.User;
- Func<BaseItem, bool> filter = i => UserViewBuilder.Filter(i, user, query, UserDataManager, LibraryManager);
-
- IEnumerable<BaseItem> items;
+ if (query.Recursive)
+ {
+ query.AncestorWithPresentationUniqueKey = PresentationUniqueKey;
+ if (query.SortBy.Length == 0)
+ {
+ query.SortBy = new[] { ItemSortBy.SortName };
+ }
+ if (query.IncludeItemTypes.Length == 0)
+ {
+ query.IncludeItemTypes = new[] { typeof(Episode).Name, typeof(Season).Name };
+ }
+ query.IsVirtualItem = false;
+ return Task.FromResult(LibraryManager.GetItemsResult(query));
+ }
- items = query.Recursive
- ? GetSeasons(user).Cast<BaseItem>().Concat(GetEpisodes(user)).Where(filter)
- : GetSeasons(user).Where(filter);
+ Func<BaseItem, bool> filter = i => UserViewBuilder.Filter(i, user, query, UserDataManager, LibraryManager);
+ var items = GetSeasons(user).Where(filter);
var result = PostFilterAndSort(items, query);
-
return Task.FromResult(result);
}