ChannelVideoItem.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using MediaBrowser.Controller.Entities;
  2. using MediaBrowser.Model.Configuration;
  3. using MediaBrowser.Model.Entities;
  4. using System.Globalization;
  5. using System.Linq;
  6. namespace MediaBrowser.Controller.Channels
  7. {
  8. public class ChannelVideoItem : Video, IChannelMediaItem
  9. {
  10. public string ExternalId { get; set; }
  11. public string ChannelId { get; set; }
  12. public ChannelItemType ChannelItemType { get; set; }
  13. public bool IsInfiniteStream { get; set; }
  14. public ChannelMediaContentType ContentType { get; set; }
  15. public string OriginalImageUrl { get; set; }
  16. public override string GetUserDataKey()
  17. {
  18. if (ContentType == ChannelMediaContentType.Trailer)
  19. {
  20. var key = this.GetProviderId(MetadataProviders.Tmdb) ?? this.GetProviderId(MetadataProviders.Tvdb) ?? this.GetProviderId(MetadataProviders.Imdb) ?? this.GetProviderId(MetadataProviders.Tvcom);
  21. if (!string.IsNullOrWhiteSpace(key))
  22. {
  23. key = key + "-trailer";
  24. // Make sure different trailers have their own data.
  25. if (RunTimeTicks.HasValue)
  26. {
  27. key += "-" + RunTimeTicks.Value.ToString(CultureInfo.InvariantCulture);
  28. }
  29. return key;
  30. }
  31. }
  32. return base.GetUserDataKey();
  33. }
  34. protected override bool GetBlockUnratedValue(UserConfiguration config)
  35. {
  36. return config.BlockUnratedItems.Contains(UnratedItem.ChannelContent);
  37. }
  38. public override bool SupportsLocalMetadata
  39. {
  40. get
  41. {
  42. return false;
  43. }
  44. }
  45. }
  46. }