From 8bb10cb12f206aadb282d75cfb68dfca457fdc03 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sat, 20 Jun 2015 23:35:22 -0400 Subject: start people update --- MediaBrowser.Controller/Entities/UserViewBuilder.cs | 9 ++++----- MediaBrowser.Controller/Library/ILibraryManager.cs | 21 +++++++++++++++++++++ 2 files changed, 25 insertions(+), 5 deletions(-) (limited to 'MediaBrowser.Controller') diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs index 3e4dff033..41e5406e1 100644 --- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs +++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs @@ -1698,9 +1698,9 @@ namespace MediaBrowser.Controller.Entities .Select(libraryManager.GetItemById) .Select(i => i == null ? "-1" : i.Name) .ToList(); - + if (!(names.Any( - v => item.People.Select(i => i.Name).Contains(v, StringComparer.OrdinalIgnoreCase)))) + v => libraryManager.GetPeople(item).Select(i => i.Name).Contains(v, StringComparer.OrdinalIgnoreCase)))) { return false; } @@ -1713,7 +1713,7 @@ namespace MediaBrowser.Controller.Entities if (personTypes.Length == 0) { - if (!(item.People.Any(p => string.Equals(p.Name, query.Person, StringComparison.OrdinalIgnoreCase)))) + if (!(libraryManager.GetPeople(item).Any(p => string.Equals(p.Name, query.Person, StringComparison.OrdinalIgnoreCase)))) { return false; } @@ -1723,8 +1723,7 @@ namespace MediaBrowser.Controller.Entities var types = personTypes; var ok = new[] { item }.Any(i => - i.People != null && - i.People.Any(p => + libraryManager.GetPeople(i).Any(p => string.Equals(p.Name, query.Person, StringComparison.OrdinalIgnoreCase) && (types.Contains(p.Type ?? string.Empty, StringComparer.OrdinalIgnoreCase) || types.Contains(p.Role ?? string.Empty, StringComparer.OrdinalIgnoreCase)))); if (!ok) diff --git a/MediaBrowser.Controller/Library/ILibraryManager.cs b/MediaBrowser.Controller/Library/ILibraryManager.cs index aa8799fa6..92028cc1a 100644 --- a/MediaBrowser.Controller/Library/ILibraryManager.cs +++ b/MediaBrowser.Controller/Library/ILibraryManager.cs @@ -412,5 +412,26 @@ namespace MediaBrowser.Controller.Library /// The item. /// IEnumerable<Folder>. IEnumerable GetCollectionFolders(BaseItem item); + + /// + /// Gets the people. + /// + /// The item. + /// List<PersonInfo>. + List GetPeople(BaseItem item); + + /// + /// Gets all people names. + /// + /// List<System.String>. + List GetAllPeople(); + + /// + /// Updates the people. + /// + /// The item. + /// The people. + /// Task. + Task UpdatePeople(BaseItem item, List people); } } \ No newline at end of file -- cgit v1.2.3