Fixed: Validate path on series update

pull/7281/head
Bogdan 5 months ago committed by Mark McDowall
parent 620220b269
commit ea0bfed700

@ -72,26 +72,34 @@ namespace Sonarr.Api.V3.Series
_commandQueueManager = commandQueueManager; _commandQueueManager = commandQueueManager;
_rootFolderService = rootFolderService; _rootFolderService = rootFolderService;
Http.Validation.RuleBuilderExtensions.ValidId(SharedValidator.RuleFor(s => s.QualityProfileId)); SharedValidator.RuleFor(s => s.Path).Cascade(CascadeMode.Stop)
.IsValidPath()
SharedValidator.RuleFor(s => s.Path) .SetValidator(rootFolderValidator)
.Cascade(CascadeMode.Stop) .SetValidator(mappedNetworkDriveValidator)
.SetValidator(seriesPathValidator)
.SetValidator(seriesAncestorValidator)
.SetValidator(systemFolderValidator)
.When(s => s.Path.IsNotNullOrWhiteSpace());
PostValidator.RuleFor(s => s.Path).Cascade(CascadeMode.Stop)
.NotEmpty()
.IsValidPath()
.When(s => s.RootFolderPath.IsNullOrWhiteSpace());
PostValidator.RuleFor(s => s.RootFolderPath).Cascade(CascadeMode.Stop)
.NotEmpty()
.IsValidPath() .IsValidPath()
.SetValidator(rootFolderValidator) .SetValidator(rootFolderExistsValidator)
.SetValidator(mappedNetworkDriveValidator) .SetValidator(seriesFolderAsRootFolderValidator)
.SetValidator(seriesPathValidator) .When(s => s.Path.IsNullOrWhiteSpace());
.SetValidator(seriesAncestorValidator)
.SetValidator(systemFolderValidator) PutValidator.RuleFor(s => s.Path).Cascade(CascadeMode.Stop)
.When(s => !s.Path.IsNullOrWhiteSpace()); .NotEmpty()
.IsValidPath();
SharedValidator.RuleFor(s => s.QualityProfileId).SetValidator(qualityProfileExistsValidator);
SharedValidator.RuleFor(s => s.QualityProfileId).Cascade(CascadeMode.Stop)
PostValidator.RuleFor(s => s.Path).IsValidPath().When(s => s.RootFolderPath.IsNullOrWhiteSpace()); .ValidId()
PostValidator.RuleFor(s => s.RootFolderPath) .SetValidator(qualityProfileExistsValidator);
.IsValidPath()
.SetValidator(rootFolderExistsValidator)
.SetValidator(seriesFolderAsRootFolderValidator)
.When(s => s.Path.IsNullOrWhiteSpace());
PostValidator.RuleFor(s => s.Title).NotEmpty(); PostValidator.RuleFor(s => s.Title).NotEmpty();
PostValidator.RuleFor(s => s.TvdbId).GreaterThan(0).SetValidator(seriesExistsValidator); PostValidator.RuleFor(s => s.TvdbId).GreaterThan(0).SetValidator(seriesExistsValidator);
} }

Loading…
Cancel
Save