mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2026-04-21 22:25:03 -04:00
Fixed: (Cardigann) Validate definition file and setting fields existence
Towards #2245
This commit is contained in:
@@ -119,20 +119,29 @@ namespace Prowlarr.Api.V1.Indexers
|
||||
|
||||
var settings = (CardigannSettings)definition.Settings;
|
||||
|
||||
var cardigannDefinition = _definitionService.GetCachedDefinition(settings.DefinitionFile);
|
||||
|
||||
foreach (var field in resource.Fields)
|
||||
if (settings.DefinitionFile.IsNotNullOrWhiteSpace())
|
||||
{
|
||||
if (!standardFields.Contains(field.Name))
|
||||
var cardigannDefinition = _definitionService.GetCachedDefinition(settings.DefinitionFile);
|
||||
|
||||
foreach (var field in resource.Fields)
|
||||
{
|
||||
if (field.Name == "cardigannCaptcha")
|
||||
if (!standardFields.Contains(field.Name))
|
||||
{
|
||||
settings.ExtraFieldData["CAPTCHA"] = field.Value?.ToString() ?? string.Empty;
|
||||
}
|
||||
else
|
||||
{
|
||||
var cardigannSetting = cardigannDefinition.Settings.FirstOrDefault(x => x.Name == field.Name);
|
||||
settings.ExtraFieldData[field.Name] = MapValue(cardigannSetting, field.Value);
|
||||
if (field.Name == "cardigannCaptcha")
|
||||
{
|
||||
settings.ExtraFieldData["CAPTCHA"] = field.Value?.ToString() ?? string.Empty;
|
||||
}
|
||||
else
|
||||
{
|
||||
var cardigannSetting = cardigannDefinition.Settings.FirstOrDefault(x => x.Name == field.Name);
|
||||
|
||||
if (cardigannSetting == null)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException(field.Name, "Unknown Cardigann setting.");
|
||||
}
|
||||
|
||||
settings.ExtraFieldData[field.Name] = MapValue(cardigannSetting, field.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user