diff --git a/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs b/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs index 754e67abd..19eb08e86 100644 --- a/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs +++ b/src/NzbDrone.Core/Download/Clients/Nzbget/Nzbget.cs @@ -32,9 +32,12 @@ namespace NzbDrone.Core.Download.Clients.Nzbget protected override string AddFromNzbFile(RemoteEpisode remoteEpisode, string filename, byte[] fileContents) { var category = Settings.TvCategory; + var priority = remoteEpisode.IsRecentEpisode() ? Settings.RecentTvPriority : Settings.OlderTvPriority; - var response = _proxy.DownloadNzb(fileContents, filename, category, priority, Settings); + var addpaused = Settings.AddPaused; + + var response = _proxy.DownloadNzb(fileContents, filename, category, priority, addpaused, Settings); if (response == null) { @@ -47,9 +50,12 @@ namespace NzbDrone.Core.Download.Clients.Nzbget protected override string AddFromNzbFile(RemoteMovie remoteMovie, string filename, byte[] fileContents) { var category = Settings.TvCategory; // TODO: Update this to MovieCategory? + var priority = Settings.RecentTvPriority; - var response = _proxy.DownloadNzb(fileContents, filename, category, priority, Settings); + var addpaused = Settings.AddPaused; + + var response = _proxy.DownloadNzb(fileContents, filename, category, priority, addpaused, Settings); if(response == null) { diff --git a/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetProxy.cs b/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetProxy.cs index 0434832b6..7a21b45b1 100644 --- a/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetProxy.cs +++ b/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetProxy.cs @@ -11,7 +11,7 @@ namespace NzbDrone.Core.Download.Clients.Nzbget { public interface INzbgetProxy { - string DownloadNzb(byte[] nzbData, string title, string category, int priority, NzbgetSettings settings); + string DownloadNzb(byte[] nzbData, string title, string category, int priority, bool addpaused, NzbgetSettings settings); NzbgetGlobalStatus GetGlobalStatus(NzbgetSettings settings); List GetQueue(NzbgetSettings settings); List GetHistory(NzbgetSettings settings); @@ -45,12 +45,12 @@ namespace NzbDrone.Core.Download.Clients.Nzbget return version >= minimumVersion; } - public string DownloadNzb(byte[] nzbData, string title, string category, int priority, NzbgetSettings settings) + public string DownloadNzb(byte[] nzbData, string title, string category, int priority, bool addpaused, NzbgetSettings settings) { if (HasVersion(16, settings)) { var droneId = Guid.NewGuid().ToString().Replace("-", ""); - var response = ProcessRequest(settings, "append", title, nzbData, category, priority, false, false, string.Empty, 0, "all", new string[] { "drone", droneId }); + var response = ProcessRequest(settings, "append", title, nzbData, category, priority, false, addpaused, string.Empty, 0, "all", new string[] { "drone", droneId }); if (response <= 0) { return null; diff --git a/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetSettings.cs b/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetSettings.cs index 3321c7671..b61c498ff 100644 --- a/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetSettings.cs +++ b/src/NzbDrone.Core/Download/Clients/Nzbget/NzbgetSettings.cs @@ -57,6 +57,9 @@ namespace NzbDrone.Core.Download.Clients.Nzbget [FieldDefinition(7, Label = "Use SSL", Type = FieldType.Checkbox)] public bool UseSsl { get; set; } + [FieldDefinition(8, Label = "Add Paused", Type = FieldType.Checkbox)] + public bool AddPaused { get; set; } + public NzbDroneValidationResult Validate() { return new NzbDroneValidationResult(Validator.Validate(this));