Browse Source

Add function back for compatibility, add sorting

Zach Phelan 2 years ago
parent
commit
8857edb66c
1 changed files with 14 additions and 0 deletions
  1. 14 0
      MediaBrowser.Controller/Entities/BaseItem.cs

+ 14 - 0
MediaBrowser.Controller/Entities/BaseItem.cs

@@ -2606,6 +2606,20 @@ namespace MediaBrowser.Controller.Entities
                 .OrderBy(i => i.SortName);
         }
 
+        /// <summary>
+        /// Get all extras with specific types that are associated with this item.
+        /// </summary>
+        /// <param name="extraTypes">The types of extras to retrieve.</param>
+        /// <returns>An enumerable containing the extras.</returns>
+        public IEnumerable<BaseItem> GetExtras(IReadOnlyCollection<ExtraType> extraTypes)
+        {
+            return ExtraIds
+                .Select(LibraryManager.GetItemById)
+                .Where(i => i != null)
+                .Where(i => i.ExtraType.HasValue && extraTypes.Contains(i.ExtraType.Value))
+                .OrderBy(i => i.SortName);
+        }
+
         public virtual long GetRunTimeTicksForPlayState()
         {
             return RunTimeTicks ?? 0;