aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Channels/ChannelVideoItem.cs')
-rw-r--r--MediaBrowser.Controller/Channels/ChannelVideoItem.cs40
1 files changed, 40 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Channels/ChannelVideoItem.cs b/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
index 83b85794d..0bf05f965 100644
--- a/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
+++ b/MediaBrowser.Controller/Channels/ChannelVideoItem.cs
@@ -1,4 +1,8 @@
using MediaBrowser.Controller.Entities;
+using MediaBrowser.Model.Configuration;
+using MediaBrowser.Model.Entities;
+using System.Globalization;
+using System.Linq;
namespace MediaBrowser.Controller.Channels
{
@@ -13,5 +17,41 @@ namespace MediaBrowser.Controller.Channels
public ChannelMediaContentType ContentType { get; set; }
public string OriginalImageUrl { get; set; }
+
+ public override string GetUserDataKey()
+ {
+ if (ContentType == ChannelMediaContentType.Trailer)
+ {
+ var key = this.GetProviderId(MetadataProviders.Tmdb) ?? this.GetProviderId(MetadataProviders.Tvdb) ?? this.GetProviderId(MetadataProviders.Imdb) ?? this.GetProviderId(MetadataProviders.Tvcom);
+
+ if (!string.IsNullOrWhiteSpace(key))
+ {
+ key = key + "-trailer";
+
+ // Make sure different trailers have their own data.
+ if (RunTimeTicks.HasValue)
+ {
+ key += "-" + RunTimeTicks.Value.ToString(CultureInfo.InvariantCulture);
+ }
+
+ return key;
+ }
+ }
+
+ return base.GetUserDataKey();
+ }
+
+ protected override bool GetBlockUnratedValue(UserConfiguration config)
+ {
+ return config.BlockUnratedItems.Contains(UnratedItem.ChannelContent);
+ }
+
+ public override bool SupportsLocalMetadata
+ {
+ get
+ {
+ return false;
+ }
+ }
}
}