aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities')
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs29
-rw-r--r--MediaBrowser.Controller/Entities/IHasTrailers.cs12
-rw-r--r--MediaBrowser.Controller/Entities/Movies/Movie.cs11
-rw-r--r--MediaBrowser.Controller/Entities/TV/Episode.cs4
-rw-r--r--MediaBrowser.Controller/Entities/TV/Season.cs8
5 files changed, 44 insertions, 20 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 29f416b8c..26aae285d 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -306,7 +306,7 @@ namespace MediaBrowser.Controller.Entities
}
}
- private List<Tuple<StringBuilder,bool>> GetSortChunks(string s1)
+ private List<Tuple<StringBuilder, bool>> GetSortChunks(string s1)
{
var list = new List<Tuple<StringBuilder, bool>>();
@@ -668,9 +668,30 @@ namespace MediaBrowser.Controller.Entities
}
[IgnoreDataMember]
- public virtual BaseItem DisplayParent
+ public virtual Guid? DisplayParentId
{
- get { return GetParent(); }
+ get
+ {
+ if (ParentId == Guid.Empty)
+ {
+ return null;
+ }
+ return ParentId;
+ }
+ }
+
+ [IgnoreDataMember]
+ public BaseItem DisplayParent
+ {
+ get
+ {
+ var id = DisplayParentId;
+ if (!id.HasValue)
+ {
+ return null;
+ }
+ return LibraryManager.GetItemById(id.Value);
+ }
}
/// <summary>
@@ -1454,7 +1475,7 @@ namespace MediaBrowser.Controller.Entities
public virtual string GetClientTypeName()
{
- if (IsFolder && SourceType == SourceType.Channel)
+ if (IsFolder && SourceType == SourceType.Channel && !(this is Channel))
{
return "ChannelFolderItem";
}
diff --git a/MediaBrowser.Controller/Entities/IHasTrailers.cs b/MediaBrowser.Controller/Entities/IHasTrailers.cs
index bc1c7d875..e5cbdff72 100644
--- a/MediaBrowser.Controller/Entities/IHasTrailers.cs
+++ b/MediaBrowser.Controller/Entities/IHasTrailers.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
+using System.Linq;
namespace MediaBrowser.Controller.Entities
{
@@ -18,11 +19,20 @@ namespace MediaBrowser.Controller.Entities
/// <value>The local trailer ids.</value>
List<Guid> LocalTrailerIds { get; set; }
List<Guid> RemoteTrailerIds { get; set; }
+ }
+ public static class HasTrailerExtensions
+ {
/// <summary>
/// Gets the trailer ids.
/// </summary>
/// <returns>List&lt;Guid&gt;.</returns>
- List<Guid> GetTrailerIds();
+ public static List<Guid> GetTrailerIds(this IHasTrailers item)
+ {
+ var list = item.LocalTrailerIds.ToList();
+ list.AddRange(item.RemoteTrailerIds);
+ return list;
+ }
+
}
}
diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs
index f5c2a9935..4d2ca9ffe 100644
--- a/MediaBrowser.Controller/Entities/Movies/Movie.cs
+++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs
@@ -79,17 +79,6 @@ namespace MediaBrowser.Controller.Entities.Movies
}
/// <summary>
- /// Gets the trailer ids.
- /// </summary>
- /// <returns>List&lt;Guid&gt;.</returns>
- public List<Guid> GetTrailerIds()
- {
- var list = LocalTrailerIds.ToList();
- list.AddRange(RemoteTrailerIds);
- return list;
- }
-
- /// <summary>
/// Gets the user data key.
/// </summary>
/// <returns>System.String.</returns>
diff --git a/MediaBrowser.Controller/Entities/TV/Episode.cs b/MediaBrowser.Controller/Entities/TV/Episode.cs
index d016392e8..ec65221bc 100644
--- a/MediaBrowser.Controller/Entities/TV/Episode.cs
+++ b/MediaBrowser.Controller/Entities/TV/Episode.cs
@@ -90,11 +90,11 @@ namespace MediaBrowser.Controller.Entities.TV
}
[IgnoreDataMember]
- public override BaseItem DisplayParent
+ public override Guid? DisplayParentId
{
get
{
- return Season ?? GetParent();
+ return SeasonId;
}
}
diff --git a/MediaBrowser.Controller/Entities/TV/Season.cs b/MediaBrowser.Controller/Entities/TV/Season.cs
index 5e067afd4..acd02e8ab 100644
--- a/MediaBrowser.Controller/Entities/TV/Season.cs
+++ b/MediaBrowser.Controller/Entities/TV/Season.cs
@@ -33,9 +33,13 @@ namespace MediaBrowser.Controller.Entities.TV
}
[IgnoreDataMember]
- public override BaseItem DisplayParent
+ public override Guid? DisplayParentId
{
- get { return Series ?? GetParent(); }
+ get
+ {
+ var series = Series;
+ return series == null ? ParentId : series.Id;
+ }
}
// Genre, Rating and Stuido will all be the same