From 3b507730e4d6451cb37ff4733c91aafa56a41d36 Mon Sep 17 00:00:00 2001 From: Roger Far Date: Sun, 15 May 2022 09:12:09 -0600 Subject: [PATCH] Fixed settings for the qBittorrent integration. --- CHANGELOG.md | 4 +++ client/src/app/navbar/navbar.component.html | 2 +- package.json | 2 +- server/RdtClient.Data/Data/SettingData.cs | 2 +- .../Models/Internal/DbSettings.cs | 35 ++++++++++--------- .../RdtClient.Service/Services/QBittorrent.cs | 8 ++--- server/RdtClient.Web/RdtClient.Web.csproj | 2 +- 7 files changed, 31 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 721f678..f73fe4a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.0.15] - 2022-05-15 +### Changed +- Remove settings for Finish Action and Category for the qBittorrent integration, these should always be set to None and the category comes from the integration. + ## [2.0.14] - 2022-05-14 ### Changed - Fixed Windows Service issue diff --git a/client/src/app/navbar/navbar.component.html b/client/src/app/navbar/navbar.component.html index 3e934cd..6003eea 100644 --- a/client/src/app/navbar/navbar.component.html +++ b/client/src/app/navbar/navbar.component.html @@ -55,7 +55,7 @@ Profile Logout - + diff --git a/package.json b/package.json index 123edb8..db77dc4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rdt-client", - "version": "2.0.14", + "version": "2.0.15", "description": "This is a web interface to manage your torrents on Real-Debrid.", "main": "index.js", "dependencies": { diff --git a/server/RdtClient.Data/Data/SettingData.cs b/server/RdtClient.Data/Data/SettingData.cs index 40a7d26..54d3fc4 100644 --- a/server/RdtClient.Data/Data/SettingData.cs +++ b/server/RdtClient.Data/Data/SettingData.cs @@ -101,7 +101,7 @@ public class SettingData { var result = new List(); - var properties = defaultSetting.GetType().GetProperties(BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.Instance); + var properties = defaultSetting.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance); foreach (var property in properties) { diff --git a/server/RdtClient.Data/Models/Internal/DbSettings.cs b/server/RdtClient.Data/Models/Internal/DbSettings.cs index fea548e..03caf72 100644 --- a/server/RdtClient.Data/Models/Internal/DbSettings.cs +++ b/server/RdtClient.Data/Models/Internal/DbSettings.cs @@ -9,27 +9,27 @@ public class DbSettings { [DisplayName("General")] [Description("")] - public DbSettingsGeneral General { get; set; } = new DbSettingsGeneral(); + public DbSettingsGeneral General { get; set; } = new(); [DisplayName("Download Client")] [Description("")] - public DbSettingsDownloadClient DownloadClient { get; set; } = new DbSettingsDownloadClient(); + public DbSettingsDownloadClient DownloadClient { get; set; } = new(); [DisplayName("Provider")] [Description("")] - public DbSettingsProvider Provider { get; set; } = new DbSettingsProvider(); + public DbSettingsProvider Provider { get; set; } = new(); - [DisplayName("qBittorrent")] + [DisplayName("qBittorrent / *darr")] [Description("The following settings only apply when a torrent gets added through the qbittorrent API, usually Radarr or Sonarr.")] - public DbSettingsIntegrations Integrations { get; set; } = new DbSettingsIntegrations(); + public DbSettingsIntegrations Integrations { get; set; } = new(); [DisplayName("GUI Defaults")] [Description("Settings used when adding a torrent through the web interface.")] - public DbSettingsGui Gui { get; set; } = new DbSettingsGui(); + public DbSettingsGui Gui { get; set; } = new(); [DisplayName("Watch")] [Description("The following settings only apply when a torrent gets through the watch folder.")] - public DbSettingsWatch Watch { get; set; } = new DbSettingsWatch(); + public DbSettingsWatch Watch { get; set; } = new(); } public class DbSettingsGeneral @@ -142,17 +142,17 @@ or public Int32 CheckInterval { get; set; } = 10; [DisplayName("Auto Import Defaults")] - public DbSettingsDefaults Default { get; set; } = new DbSettingsDefaults(); + public DbSettingsDefaultsWithCategory Default { get; set; } = new(); } public class DbSettingsIntegrations { - public DbSettingsDefaults Default { get; set; } = new DbSettingsDefaults(); + public DbSettingsDefaults Default { get; set; } = new(); } public class DbSettingsGui { - public DbSettingsDefaults Default { get; set; } = new DbSettingsDefaults(); + public DbSettingsDefaultsWithCategory Default { get; set; } = new(); } public class DbSettingsWatch @@ -166,22 +166,25 @@ public class DbSettingsWatch public Int32 Interval { get; set; } = 60; [DisplayName("Import Defaults")] - public DbSettingsDefaults Default { get; set; } = new DbSettingsDefaults(); + public DbSettingsDefaultsWithCategory Default { get; set; } = new(); } -public class DbSettingsDefaults +public class DbSettingsDefaultsWithCategory : DbSettingsDefaults { [DisplayName("Category")] [Description("When a torrent is imported assign it this category.")] public String? Category { get; set; } = null; - [DisplayName("Only download available files on debrid provider")] - [Description("When selected, it will only download files in the torrent that have been download by Real-Debrid. You can use this in combination with the Min File size setting above.")] - public Boolean OnlyDownloadAvailableFiles { get; set; } = true; - [DisplayName("Finished Action")] [Description("When a torrent is finished, perform this action.")] public TorrentFinishedAction FinishedAction { get; set; } = TorrentFinishedAction.RemoveAllTorrents; +} + +public class DbSettingsDefaults +{ + [DisplayName("Only download available files on debrid provider")] + [Description("When selected, it will only download files in the torrent that have been download by Real-Debrid. You can use this in combination with the Min File size setting above.")] + public Boolean OnlyDownloadAvailableFiles { get; set; } = true; [DisplayName("Minimum file size to download")] [Description("Files that are smaller than this setting are skipped and not downloaded. When set to 0 all files are downloaded. When downloading from Radarr or Sonarr it's recommended to keep this setting at atleast a few MB to avoid the debrid provider having to re-download the torrent.")] diff --git a/server/RdtClient.Service/Services/QBittorrent.cs b/server/RdtClient.Service/Services/QBittorrent.cs index 035fc09..2450a73 100644 --- a/server/RdtClient.Service/Services/QBittorrent.cs +++ b/server/RdtClient.Service/Services/QBittorrent.cs @@ -419,9 +419,9 @@ public class QBittorrent { var torrent = new Torrent { - Category = category ?? Settings.Get.Integrations.Default.Category, + Category = category, DownloadAction = Settings.Get.Integrations.Default.OnlyDownloadAvailableFiles ? TorrentDownloadAction.DownloadAvailableFiles : TorrentDownloadAction.DownloadAll, - FinishedAction = Settings.Get.Integrations.Default.FinishedAction, + FinishedAction = TorrentFinishedAction.None, DownloadMinSize = Settings.Get.Integrations.Default.MinFileSize, TorrentRetryAttempts = Settings.Get.Integrations.Default.TorrentRetryAttempts, DownloadRetryAttempts = Settings.Get.Integrations.Default.DownloadRetryAttempts, @@ -437,9 +437,9 @@ public class QBittorrent { var torrent = new Torrent { - Category = category ?? Settings.Get.Integrations.Default.Category, + Category = category, DownloadAction = Settings.Get.Integrations.Default.OnlyDownloadAvailableFiles ? TorrentDownloadAction.DownloadAvailableFiles : TorrentDownloadAction.DownloadAll, - FinishedAction = Settings.Get.Integrations.Default.FinishedAction, + FinishedAction = TorrentFinishedAction.None, DownloadMinSize = Settings.Get.Integrations.Default.MinFileSize, TorrentRetryAttempts = Settings.Get.Integrations.Default.TorrentRetryAttempts, DownloadRetryAttempts = Settings.Get.Integrations.Default.DownloadRetryAttempts, diff --git a/server/RdtClient.Web/RdtClient.Web.csproj b/server/RdtClient.Web/RdtClient.Web.csproj index 3291acc..302de6d 100644 --- a/server/RdtClient.Web/RdtClient.Web.csproj +++ b/server/RdtClient.Web/RdtClient.Web.csproj @@ -4,7 +4,7 @@ net6.0 Exe 94c24cba-f03f-4453-a671-3640b517c573 - 2.0.14 + 2.0.15 enable enable latest