diff options
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs | 3 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/BaseItem.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Game.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/IHasSoundtracks.cs | 17 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Movies/Movie.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Episode.cs | 3 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Season.cs | 4 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Series.cs | 4 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Trailer.cs | 6 |
9 files changed, 44 insertions, 10 deletions
diff --git a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs index cb64cfdfe..09aefdac9 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs @@ -11,9 +11,12 @@ namespace MediaBrowser.Controller.Entities.Audio /// </summary> public class MusicAlbum : Folder, IHasAlbumArtist, IHasArtist, IHasMusicGenres { + public List<Guid> SoundtrackIds { get; set; } + public MusicAlbum() { Artists = new List<string>(); + SoundtrackIds = new List<Guid>(); } public string LastFmImageUrl { get; set; } diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index f8b2fad23..9cd839b21 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -25,11 +25,6 @@ namespace MediaBrowser.Controller.Entities /// </summary> public abstract class BaseItem : IHasProviderIds, ILibraryItem { - /// <summary> - /// MusicAlbums in the library that are the soundtrack for this item - /// </summary> - public List<Guid> SoundtrackIds { get; set; } - protected BaseItem() { Genres = new List<string>(); @@ -43,7 +38,6 @@ namespace MediaBrowser.Controller.Entities Tags = new List<string>(); ThemeSongIds = new List<Guid>(); ThemeVideoIds = new List<Guid>(); - SoundtrackIds = new List<Guid>(); LocalTrailerIds = new List<Guid>(); LockedFields = new List<MetadataFields>(); Taglines = new List<string>(); diff --git a/MediaBrowser.Controller/Entities/Game.cs b/MediaBrowser.Controller/Entities/Game.cs index 8a33eeb86..e8374c274 100644 --- a/MediaBrowser.Controller/Entities/Game.cs +++ b/MediaBrowser.Controller/Entities/Game.cs @@ -1,13 +1,17 @@ using MediaBrowser.Model.Entities; +using System; using System.Collections.Generic; namespace MediaBrowser.Controller.Entities { - public class Game : BaseItem + public class Game : BaseItem, IHasSoundtracks { + public List<Guid> SoundtrackIds { get; set; } + public Game() { MultiPartGameFiles = new List<string>(); + SoundtrackIds = new List<Guid>(); } /// <summary> diff --git a/MediaBrowser.Controller/Entities/IHasSoundtracks.cs b/MediaBrowser.Controller/Entities/IHasSoundtracks.cs new file mode 100644 index 000000000..31defc9f4 --- /dev/null +++ b/MediaBrowser.Controller/Entities/IHasSoundtracks.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; + +namespace MediaBrowser.Controller.Entities +{ + /// <summary> + /// Interface IHasSoundtracks + /// </summary> + public interface IHasSoundtracks + { + /// <summary> + /// Gets or sets the soundtrack ids. + /// </summary> + /// <value>The soundtrack ids.</value> + List<Guid> SoundtrackIds { get; set; } + } +} diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs index 54ad9c1c9..eef348f61 100644 --- a/MediaBrowser.Controller/Entities/Movies/Movie.cs +++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs @@ -11,13 +11,16 @@ namespace MediaBrowser.Controller.Entities.Movies /// <summary> /// Class Movie /// </summary> - public class Movie : Video, IHasCriticRating + public class Movie : Video, IHasCriticRating, IHasSoundtracks { public List<Guid> SpecialFeatureIds { get; set; } + public List<Guid> SoundtrackIds { get; set; } + public Movie() { SpecialFeatureIds = new List<Guid>(); + SoundtrackIds = new List<Guid>(); } /// <summary> diff --git a/MediaBrowser.Controller/Entities/TV/Episode.cs b/MediaBrowser.Controller/Entities/TV/Episode.cs index 96b120b8f..95d346733 100644 --- a/MediaBrowser.Controller/Entities/TV/Episode.cs +++ b/MediaBrowser.Controller/Entities/TV/Episode.cs @@ -193,6 +193,7 @@ namespace MediaBrowser.Controller.Entities.TV return false; } + [IgnoreDataMember] public bool IsMissingEpisode { get @@ -201,11 +202,13 @@ namespace MediaBrowser.Controller.Entities.TV } } + [IgnoreDataMember] public bool IsUnaired { get { return PremiereDate.HasValue && PremiereDate.Value.ToLocalTime().Date >= DateTime.Now.Date; } } + [IgnoreDataMember] public bool IsVirtualUnaired { get { return LocationType == Model.Entities.LocationType.Virtual && IsUnaired; } diff --git a/MediaBrowser.Controller/Entities/TV/Season.cs b/MediaBrowser.Controller/Entities/TV/Season.cs index 5a53e8c0f..97a09b7b5 100644 --- a/MediaBrowser.Controller/Entities/TV/Season.cs +++ b/MediaBrowser.Controller/Entities/TV/Season.cs @@ -149,21 +149,25 @@ namespace MediaBrowser.Controller.Entities.TV return IndexNumber != null ? IndexNumber.Value.ToString("0000") : Name; } + [IgnoreDataMember] public bool IsMissingSeason { get { return LocationType == Model.Entities.LocationType.Virtual && Children.OfType<Episode>().All(i => i.IsMissingEpisode); } } + [IgnoreDataMember] public bool IsUnaired { get { return Children.OfType<Episode>().All(i => i.IsUnaired); } } + [IgnoreDataMember] public bool IsVirtualUnaired { get { return LocationType == Model.Entities.LocationType.Virtual && IsUnaired; } } + [IgnoreDataMember] public bool IsMissingOrVirtualUnaired { get { return LocationType == Model.Entities.LocationType.Virtual && Children.OfType<Episode>().All(i => i.IsVirtualUnaired || i.IsMissingEpisode); } diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs index 11fb198c2..02ea50c6b 100644 --- a/MediaBrowser.Controller/Entities/TV/Series.cs +++ b/MediaBrowser.Controller/Entities/TV/Series.cs @@ -11,9 +11,10 @@ namespace MediaBrowser.Controller.Entities.TV /// <summary> /// Class Series /// </summary> - public class Series : Folder + public class Series : Folder, IHasSoundtracks { public List<Guid> SpecialFeatureIds { get; set; } + public List<Guid> SoundtrackIds { get; set; } public int SeasonCount { get; set; } @@ -22,6 +23,7 @@ namespace MediaBrowser.Controller.Entities.TV AirDays = new List<DayOfWeek>(); SpecialFeatureIds = new List<Guid>(); + SoundtrackIds = new List<Guid>(); } /// <summary> diff --git a/MediaBrowser.Controller/Entities/Trailer.cs b/MediaBrowser.Controller/Entities/Trailer.cs index c9fe471b3..26814ad40 100644 --- a/MediaBrowser.Controller/Entities/Trailer.cs +++ b/MediaBrowser.Controller/Entities/Trailer.cs @@ -1,4 +1,5 @@ using MediaBrowser.Model.Entities; +using System; using System.Collections.Generic; using System.Runtime.Serialization; @@ -7,12 +8,15 @@ namespace MediaBrowser.Controller.Entities /// <summary> /// Class Trailer /// </summary> - public class Trailer : Video, IHasCriticRating + public class Trailer : Video, IHasCriticRating, IHasSoundtracks { + public List<Guid> SoundtrackIds { get; set; } + public Trailer() { RemoteTrailers = new List<MediaUrl>(); Taglines = new List<string>(); + SoundtrackIds = new List<Guid>(); } /// <summary> |
