diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-01-14 10:50:39 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-01-14 10:50:39 -0500 |
| commit | ce13ff95ad92fb2ee9448ac0a8d4054a6d043b14 (patch) | |
| tree | f16e1fa71256847fb23e17c86c31679b0e57dbb7 /MediaBrowser.Api/SimilarItemsHelper.cs | |
| parent | eb42293901e15ef2f334390681ef71a84e247886 (diff) | |
support plot keywords
Diffstat (limited to 'MediaBrowser.Api/SimilarItemsHelper.cs')
| -rw-r--r-- | MediaBrowser.Api/SimilarItemsHelper.cs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/MediaBrowser.Api/SimilarItemsHelper.cs b/MediaBrowser.Api/SimilarItemsHelper.cs index 683e609d2..d1dc801bc 100644 --- a/MediaBrowser.Api/SimilarItemsHelper.cs +++ b/MediaBrowser.Api/SimilarItemsHelper.cs @@ -130,6 +130,17 @@ namespace MediaBrowser.Api return new List<string>(); } + private static IEnumerable<string> GetKeywords(BaseItem item) + { + var hasTags = item as IHasKeywords; + if (hasTags != null) + { + return hasTags.Keywords; + } + + return new List<string>(); + } + /// <summary> /// Gets the similiarity score. /// </summary> @@ -151,6 +162,9 @@ namespace MediaBrowser.Api // Find common tags points += GetTags(item1).Where(i => GetTags(item2).Contains(i, StringComparer.OrdinalIgnoreCase)).Sum(i => 10); + // Find common keywords + points += GetKeywords(item1).Where(i => GetKeywords(item2).Contains(i, StringComparer.OrdinalIgnoreCase)).Sum(i => 10); + // Find common studios points += item1.Studios.Where(i => item2.Studios.Contains(i, StringComparer.OrdinalIgnoreCase)).Sum(i => 3); |
