From 0d025f7fb620bf2a24ca9aa4e5994f132e02e7c0 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 6 May 2014 22:28:19 -0400 Subject: beginning remote subtitle downloading --- MediaBrowser.Model/ApiClient/IApiClient.cs | 2 +- .../Configuration/ServerConfiguration.cs | 17 +++++++++++++++++ MediaBrowser.Model/Dto/StreamOptions.cs | 2 +- MediaBrowser.Model/MediaBrowser.Model.csproj | 1 + MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs | 19 +++++++++++++++++++ MediaBrowser.Model/Querying/ItemFilter.cs | 4 ++++ 6 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs (limited to 'MediaBrowser.Model') diff --git a/MediaBrowser.Model/ApiClient/IApiClient.cs b/MediaBrowser.Model/ApiClient/IApiClient.cs index dd1603d01..c9f5f3ae7 100644 --- a/MediaBrowser.Model/ApiClient/IApiClient.cs +++ b/MediaBrowser.Model/ApiClient/IApiClient.cs @@ -760,7 +760,7 @@ namespace MediaBrowser.Model.ApiClient /// /// The options. /// System.String. - string GetSubtitleUrl(SubtitleOptions options); + string GetSubtitleUrl(SubtitleDownloadOptions options); /// /// Gets an image url that can be used to download an image from the api diff --git a/MediaBrowser.Model/Configuration/ServerConfiguration.cs b/MediaBrowser.Model/Configuration/ServerConfiguration.cs index 0fb9db6c0..486268e2b 100644 --- a/MediaBrowser.Model/Configuration/ServerConfiguration.cs +++ b/MediaBrowser.Model/Configuration/ServerConfiguration.cs @@ -221,6 +221,8 @@ namespace MediaBrowser.Model.Configuration public NotificationOptions NotificationOptions { get; set; } + public SubtitleOptions SubtitleOptions { get; set; } + /// /// Initializes a new instance of the class. /// @@ -284,6 +286,8 @@ namespace MediaBrowser.Model.Configuration UICulture = "en-us"; NotificationOptions = new NotificationOptions(); + + SubtitleOptions = new SubtitleOptions(); } } @@ -311,4 +315,17 @@ namespace MediaBrowser.Model.Configuration public string From { get; set; } public string To { get; set; } } + + public class SubtitleOptions + { + public bool RequireExternalSubtitles { get; set; } + public string[] SubtitleDownloadLanguages { get; set; } + public bool DownloadMovieSubtitles { get; set; } + public bool DownloadEpisodeSubtitles { get; set; } + + public SubtitleOptions() + { + SubtitleDownloadLanguages = new string[] { }; + } + } } diff --git a/MediaBrowser.Model/Dto/StreamOptions.cs b/MediaBrowser.Model/Dto/StreamOptions.cs index b1ead2ca3..861fa4e01 100644 --- a/MediaBrowser.Model/Dto/StreamOptions.cs +++ b/MediaBrowser.Model/Dto/StreamOptions.cs @@ -159,7 +159,7 @@ public string DeviceId { get; set; } } - public class SubtitleOptions + public class SubtitleDownloadOptions { /// /// Gets or sets the item identifier. diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj index 877eb5444..aaa29d21c 100644 --- a/MediaBrowser.Model/MediaBrowser.Model.csproj +++ b/MediaBrowser.Model/MediaBrowser.Model.csproj @@ -139,6 +139,7 @@ + diff --git a/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs b/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs new file mode 100644 index 000000000..dab9a57a8 --- /dev/null +++ b/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs @@ -0,0 +1,19 @@ +using System; + +namespace MediaBrowser.Model.Providers +{ + public class RemoteSubtitleInfo + { + public string Language { get; set; } + public string Id { get; set; } + public string ProviderName { get; set; } + public string Name { get; set; } + public string Format { get; set; } + public string Author { get; set; } + public string Comment { get; set; } + public DateTime? DateCreated { get; set; } + public float? CommunityRating { get; set; } + public int? DownloadCount { get; set; } + public bool? IsHashMatch { get; set; } + } +} diff --git a/MediaBrowser.Model/Querying/ItemFilter.cs b/MediaBrowser.Model/Querying/ItemFilter.cs index 2e88a98c9..d30978ebf 100644 --- a/MediaBrowser.Model/Querying/ItemFilter.cs +++ b/MediaBrowser.Model/Querying/ItemFilter.cs @@ -27,6 +27,10 @@ namespace MediaBrowser.Model.Querying /// IsFavorite = 5, /// + /// The is recently added + /// + IsRecentlyAdded = 6, + /// /// The item is resumable /// IsResumable = 7, -- cgit v1.2.3