jellyfin/MediaBrowser.Model/Configuration/LibraryOptions.cs

103 lines
3.1 KiB
C#
Raw Normal View History

2020-02-04 00:49:27 +00:00
#pragma warning disable CS1591
using System;
2018-12-27 23:27:57 +00:00
namespace MediaBrowser.Model.Configuration
{
public class LibraryOptions
{
public LibraryOptions()
{
TypeOptions = Array.Empty<TypeOptions>();
DisabledSubtitleFetchers = Array.Empty<string>();
SubtitleFetcherOrder = Array.Empty<string>();
DisabledLocalMetadataReaders = Array.Empty<string>();
SkipSubtitlesIfAudioTrackMatches = true;
RequirePerfectSubtitleMatch = true;
AutomaticallyAddToCollection = true;
EnablePhotos = true;
SaveSubtitlesWithMedia = true;
EnableRealtimeMonitor = true;
PathInfos = Array.Empty<MediaPathInfo>();
EnableAutomaticSeriesGrouping = true;
SeasonZeroDisplayName = "Specials";
}
2018-12-27 23:27:57 +00:00
public bool EnablePhotos { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool EnableRealtimeMonitor { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool EnableChapterImageExtraction { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool ExtractChapterImagesDuringLibraryScan { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public MediaPathInfo[] PathInfos { get; set; }
public bool SaveLocalMetadata { get; set; }
2020-06-15 21:43:52 +00:00
[Obsolete("Disable remote providers in TypeOptions instead")]
2018-12-27 23:27:57 +00:00
public bool EnableInternetProviders { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool EnableAutomaticSeriesGrouping { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool EnableEmbeddedTitles { get; set; }
2020-06-15 21:43:52 +00:00
public bool EnableEmbeddedEpisodeInfos { get; set; }
2018-12-27 23:27:57 +00:00
public int AutomaticRefreshIntervalDays { get; set; }
/// <summary>
/// Gets or sets the preferred metadata language.
/// </summary>
/// <value>The preferred metadata language.</value>
2021-10-26 11:56:30 +00:00
public string? PreferredMetadataLanguage { get; set; }
2018-12-27 23:27:57 +00:00
/// <summary>
/// Gets or sets the metadata country code.
/// </summary>
/// <value>The metadata country code.</value>
2021-10-26 11:56:30 +00:00
public string? MetadataCountryCode { get; set; }
2018-12-27 23:27:57 +00:00
public string SeasonZeroDisplayName { get; set; }
2020-06-15 21:43:52 +00:00
2021-10-26 11:56:30 +00:00
public string[]? MetadataSavers { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public string[] DisabledLocalMetadataReaders { get; set; }
2020-06-15 21:43:52 +00:00
2021-10-26 11:56:30 +00:00
public string[]? LocalMetadataReaderOrder { get; set; }
2018-12-27 23:27:57 +00:00
public string[] DisabledSubtitleFetchers { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public string[] SubtitleFetcherOrder { get; set; }
public bool SkipSubtitlesIfEmbeddedSubtitlesPresent { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool SkipSubtitlesIfAudioTrackMatches { get; set; }
2020-06-15 21:43:52 +00:00
2021-10-26 11:56:30 +00:00
public string[]? SubtitleDownloadLanguages { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool RequirePerfectSubtitleMatch { get; set; }
2020-06-15 21:43:52 +00:00
2018-12-27 23:27:57 +00:00
public bool SaveSubtitlesWithMedia { get; set; }
public bool AutomaticallyAddToCollection { get; set; }
2018-12-27 23:27:57 +00:00
public TypeOptions[] TypeOptions { get; set; }
2021-10-26 11:56:30 +00:00
public TypeOptions? GetTypeOptions(string type)
2018-12-27 23:27:57 +00:00
{
foreach (var options in TypeOptions)
{
if (string.Equals(options.Type, type, StringComparison.OrdinalIgnoreCase))
{
return options;
}
}
return null;
}
}
}