add movie metadata support to live tv

This commit is contained in:
Luke Pulverenti
2015-03-14 16:00:32 -04:00
parent 6acfee7df6
commit b1d2841583
21 changed files with 279 additions and 59 deletions

View File

@@ -239,6 +239,11 @@ namespace MediaBrowser.Controller.Entities
get { return this.GetImagePath(ImageType.Primary); }
}
public virtual bool IsInternetMetadataEnabled()
{
return ConfigurationManager.Configuration.EnableInternetProviders;
}
public virtual bool CanDelete()
{
var locationType = LocationType;

View File

@@ -184,6 +184,12 @@ namespace MediaBrowser.Controller.Entities
/// </summary>
/// <value><c>true</c> if [always scan internal metadata path]; otherwise, <c>false</c>.</value>
bool AlwaysScanInternalMetadataPath { get; }
/// <summary>
/// Determines whether [is internet metadata enabled].
/// </summary>
/// <returns><c>true</c> if [is internet metadata enabled]; otherwise, <c>false</c>.</returns>
bool IsInternetMetadataEnabled();
}
public static class HasImagesExtensions

View File

@@ -1,5 +1,6 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.LiveTv;
using MediaBrowser.Model.Users;
@@ -11,7 +12,7 @@ using System.Threading.Tasks;
namespace MediaBrowser.Controller.LiveTv
{
public class LiveTvProgram : BaseItem, ILiveTvItem
public class LiveTvProgram : BaseItem, ILiveTvItem, IHasLookupInfo<LiveTvProgramLookupInfo>
{
/// <summary>
/// Gets the user data key.
@@ -220,5 +221,23 @@ namespace MediaBrowser.Controller.LiveTv
{
return false;
}
public override bool IsInternetMetadataEnabled()
{
if (IsMovie)
{
var options = (LiveTvOptions)ConfigurationManager.GetConfiguration("livetv");
return options.EnableMovieProviders;
}
return false;
}
public LiveTvProgramLookupInfo GetLookupInfo()
{
var info = GetItemLookupInfo<LiveTvProgramLookupInfo>();
info.IsMovie = IsMovie;
return info;
}
}
}

View File

@@ -145,6 +145,12 @@ namespace MediaBrowser.Controller.LiveTv
/// <value><c>true</c> if this instance is premiere; otherwise, <c>false</c>.</value>
public bool IsPremiere { get; set; }
/// <summary>
/// Gets or sets the production year.
/// </summary>
/// <value>The production year.</value>
public int? ProductionYear { get; set; }
public ProgramInfo()
{
Genres = new List<string>();

View File

@@ -293,6 +293,7 @@
<Compile Include="Providers\IRemoteSearchProvider.cs" />
<Compile Include="Providers\ISeriesOrderProvider.cs" />
<Compile Include="Providers\ItemInfo.cs" />
<Compile Include="Providers\LiveTvProgramLookupInfo.cs" />
<Compile Include="Providers\LocalImageInfo.cs" />
<Compile Include="Providers\LocalMetadataResult.cs" />
<Compile Include="Providers\MetadataRefreshMode.cs" />

View File

@@ -0,0 +1,9 @@
using System;
namespace MediaBrowser.Controller.Providers
{
public class LiveTvProgramLookupInfo : ItemLookupInfo
{
public Boolean IsMovie { get; set; }
}
}