diff options
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/BaseItem.cs | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index d13e69fce..320225031 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -27,7 +27,7 @@ namespace MediaBrowser.Controller.Entities protected BaseItem() { Genres = new List<string>(); - TrailerUrls = new List<string>(); + RemoteTrailers = new List<MediaUrl>(); Studios = new List<string>(); People = new List<PersonInfo>(); Taglines = new List<string>(); @@ -903,7 +903,7 @@ namespace MediaBrowser.Controller.Entities /// Gets or sets the trailer URL. /// </summary> /// <value>The trailer URL.</value> - public List<string> TrailerUrls { get; set; } + public List<MediaUrl> RemoteTrailers { get; set; } /// <summary> /// Gets or sets the provider ids. @@ -1180,22 +1180,28 @@ namespace MediaBrowser.Controller.Entities /// Adds a TrailerUrl to the item /// </summary> /// <param name="url">The URL.</param> - /// <exception cref="System.ArgumentNullException"></exception> - public void AddTrailerUrl(string url) + /// <param name="isDirectLink">if set to <c>true</c> [is direct link].</param> + /// <exception cref="System.ArgumentNullException">url</exception> + public void AddTrailerUrl(string url, bool isDirectLink) { if (string.IsNullOrWhiteSpace(url)) { throw new ArgumentNullException("url"); } - if (TrailerUrls == null) + var current = RemoteTrailers.FirstOrDefault(i => string.Equals(i.Url, url, StringComparison.OrdinalIgnoreCase)); + + if (current != null) { - TrailerUrls = new List<string>(); + current.IsDirectLink = isDirectLink; } - - if (!TrailerUrls.Contains(url, StringComparer.OrdinalIgnoreCase)) + else { - TrailerUrls.Add(url); + RemoteTrailers.Add(new MediaUrl + { + Url = url, + IsDirectLink = isDirectLink + }); } } |
