using MediaBrowser.Model.Plugins; namespace Jellyfin.Plugin.Jellypod.Configuration; /// /// Plugin configuration for Jellypod. /// public class PluginConfiguration : BasePluginConfiguration { /// /// Initializes a new instance of the class. /// public PluginConfiguration() { PodcastStoragePath = string.Empty; UpdateIntervalHours = 6; GlobalAutoDownloadEnabled = true; MaxConcurrentDownloads = 2; MaxEpisodesPerPodcast = 50; CreatePodcastFolders = true; DownloadNewEpisodesOnly = true; } /// /// Gets or sets the path where podcasts will be stored. /// Leave empty to use the default Jellyfin data path. /// public string PodcastStoragePath { get; set; } /// /// Gets or sets the update interval in hours for checking new episodes. /// public int UpdateIntervalHours { get; set; } /// /// Gets or sets a value indicating whether auto-download is enabled globally. /// public bool GlobalAutoDownloadEnabled { get; set; } /// /// Gets or sets the maximum number of concurrent downloads. /// public int MaxConcurrentDownloads { get; set; } /// /// Gets or sets the maximum episodes to keep per podcast (0 = unlimited). /// public int MaxEpisodesPerPodcast { get; set; } /// /// Gets or sets a value indicating whether to create subfolders for each podcast. /// public bool CreatePodcastFolders { get; set; } /// /// Gets or sets a value indicating whether to only download new episodes after subscription. /// public bool DownloadNewEpisodesOnly { get; set; } }