aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-06-20 23:35:22 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-06-20 23:35:22 -0400
commit8bb10cb12f206aadb282d75cfb68dfca457fdc03 (patch)
treeaab466f8c640536ea993bb01493540075137f7d6 /MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs
parent64bdf1343401e24d68c9dfd315723e5c7588b7c5 (diff)
start people update
Diffstat (limited to 'MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs')
-rw-r--r--MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs15
1 files changed, 9 insertions, 6 deletions
diff --git a/MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs b/MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs
index 2af6e5588..f19668d5d 100644
--- a/MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs
+++ b/MediaBrowser.Server.Implementations/Intros/DefaultIntroProvider.cs
@@ -94,7 +94,8 @@ namespace MediaBrowser.Server.Implementations.Intros
Type = ItemWithTrailerType.ItemWithTrailer,
User = user,
WatchingItem = item,
- Random = random
+ Random = random,
+ LibraryManager = _libraryManager
}));
}
@@ -134,7 +135,8 @@ namespace MediaBrowser.Server.Implementations.Intros
Type = ItemWithTrailerType.ChannelTrailer,
User = user,
WatchingItem = item,
- Random = random
+ Random = random,
+ LibraryManager = _libraryManager
}));
}
@@ -239,7 +241,7 @@ namespace MediaBrowser.Server.Implementations.Intros
return true;
}
- internal static int GetSimiliarityScore(BaseItem item1, BaseItem item2, Random random)
+ internal static int GetSimiliarityScore(BaseItem item1, BaseItem item2, Random random, ILibraryManager libraryManager)
{
var points = 0;
@@ -260,11 +262,11 @@ namespace MediaBrowser.Server.Implementations.Intros
// Find common studios
points += item1.Studios.Where(i => item2.Studios.Contains(i, StringComparer.OrdinalIgnoreCase)).Sum(i => 5);
- var item2PeopleNames = item2.People.Select(i => i.Name)
+ var item2PeopleNames = libraryManager.GetPeople(item2).Select(i => i.Name)
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToDictionary(i => i, StringComparer.OrdinalIgnoreCase);
- points += item1.People.Where(i => item2PeopleNames.ContainsKey(i.Name)).Sum(i =>
+ points += libraryManager.GetPeople(item1).Where(i => item2PeopleNames.ContainsKey(i.Name)).Sum(i =>
{
if (string.Equals(i.Type, PersonType.Director, StringComparison.OrdinalIgnoreCase) || string.Equals(i.Role, PersonType.Director, StringComparison.OrdinalIgnoreCase))
{
@@ -340,6 +342,7 @@ namespace MediaBrowser.Server.Implementations.Intros
internal User User;
internal BaseItem WatchingItem;
internal Random Random;
+ internal ILibraryManager LibraryManager;
private bool? _isPlayed;
public bool IsPlayed
@@ -361,7 +364,7 @@ namespace MediaBrowser.Server.Implementations.Intros
{
if (!_score.HasValue)
{
- _score = GetSimiliarityScore(WatchingItem, Item, Random);
+ _score = GetSimiliarityScore(WatchingItem, Item, Random, LibraryManager);
}
return _score.Value;
}