Fixed: (Cardigann) Parse text templates only if necessary

This commit is contained in:
Bogdan
2023-02-23 08:02:37 +02:00
committed by GitHub
parent 26bea14137
commit caab337379
2 changed files with 165 additions and 175 deletions

View File

@@ -349,11 +349,13 @@ namespace NzbDrone.Core.Indexers.Cardigann
public string ApplyGoTemplateText(string template, Dictionary<string, object> variables = null, TemplateTextModifier modifier = null)
{
if (variables == null)
if (template.IsNullOrWhiteSpace() || !template.Contains("{{"))
{
variables = GetBaseTemplateVariables();
return template;
}
variables ??= GetBaseTemplateVariables();
// handle re_replace expression
// Example: {{ re_replace .Query.Keywords "[^a-zA-Z0-9]+" "%" }}
var reReplaceRegex = new Regex(@"{{\s*re_replace\s+(\..+?)\s+""(.*?)""\s+""(.*?)""\s*}}");