From 66cfcb53d733d752fb6fee690fcfbd91f6193e5f Mon Sep 17 00:00:00 2001 From: Yossef Mendelssohn Date: Thu, 4 Apr 2024 13:07:53 -0400 Subject: [PATCH] let conditional .not work on default vars Instead of needing the variable value to be directly declared, it could be one of the default values. --- modules/meta.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/modules/meta.py b/modules/meta.py index 8aff78b1..77900e22 100644 --- a/modules/meta.py +++ b/modules/meta.py @@ -399,8 +399,17 @@ class DataFile: error_text = "- exists" con_var_value = var_key[:-7] elif var_key.endswith(".not"): - if var_key[:-4] in variables: - con_var_value = variables[var_key[:-4]] + var_name = var_key[:-4] + if var_name in variables: + con_var_value = variables[var_name] + if isinstance(var_value, list): + if con_var_value in var_value: + error_text = f'in {var_value}' + elif str(con_var_value) == str(var_value): + error_text = f'is "{var_value}"' + elif var_name in default: + # TODO: consolidate + con_var_value = default[var_name] if isinstance(var_value, list): if con_var_value in var_value: error_text = f'in {var_value}'