mirror of
https://github.com/Prowlarr/Prowlarr
synced 2025-12-06 08:34:28 +01:00
Fixed: Saving Newznab indexer when redirect was true
This commit is contained in:
parent
063666a7c9
commit
dadfb8d008
3 changed files with 19 additions and 7 deletions
|
|
@ -208,12 +208,6 @@ public ValidationResult Test()
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
// Ensure Redirect is true for Usenet protocols
|
|
||||||
if (Protocol == DownloadProtocol.Usenet || (SupportsRedirect && Redirect))
|
|
||||||
{
|
|
||||||
failures.Add(new ValidationFailure("Redirect", "Redirect must be enabled for Usenet indexers"));
|
|
||||||
}
|
|
||||||
|
|
||||||
Test(failures).GetAwaiter().GetResult();
|
Test(failures).GetAwaiter().GetResult();
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
|
using System.Collections.Generic;
|
||||||
using FluentValidation;
|
using FluentValidation;
|
||||||
|
using FluentValidation.Results;
|
||||||
using NzbDrone.Core.Indexers;
|
using NzbDrone.Core.Indexers;
|
||||||
using NzbDrone.Core.Validation;
|
using NzbDrone.Core.Validation;
|
||||||
using NzbDrone.SignalR;
|
using NzbDrone.SignalR;
|
||||||
|
|
@ -24,5 +26,21 @@ public IndexerController(IBroadcastSignalRMessage signalRBroadcaster,
|
||||||
SharedValidator.RuleFor(c => c.Priority).InclusiveBetween(1, 50);
|
SharedValidator.RuleFor(c => c.Priority).InclusiveBetween(1, 50);
|
||||||
SharedValidator.RuleFor(c => c.DownloadClientId).SetValidator(downloadClientExistsValidator);
|
SharedValidator.RuleFor(c => c.DownloadClientId).SetValidator(downloadClientExistsValidator);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void Validate(IndexerDefinition definition, bool includeWarnings)
|
||||||
|
{
|
||||||
|
var instance = _providerFactory.GetInstance(definition);
|
||||||
|
|
||||||
|
// Ensure Redirect is true for Usenet protocols
|
||||||
|
if (instance is { Protocol: DownloadProtocol.Usenet, SupportsRedirect: true } && definition is { Redirect: false })
|
||||||
|
{
|
||||||
|
throw new ValidationException(new List<ValidationFailure>
|
||||||
|
{
|
||||||
|
new("Redirect", "Redirect must be enabled for Usenet indexers")
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
base.Validate(definition, includeWarnings);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -271,7 +271,7 @@ public void Handle(ProviderDeletedEvent<TProvider> message)
|
||||||
BroadcastResourceChange(ModelAction.Deleted, message.ProviderId);
|
BroadcastResourceChange(ModelAction.Deleted, message.ProviderId);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Validate(TProviderDefinition definition, bool includeWarnings)
|
protected virtual void Validate(TProviderDefinition definition, bool includeWarnings)
|
||||||
{
|
{
|
||||||
var validationResult = definition.Settings.Validate();
|
var validationResult = definition.Settings.Validate();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue