diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-10-18 12:11:10 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-10-18 12:11:10 +0200 |
commit | 98b200c630474559eb13e48c173473bab7b3735b (patch) | |
tree | f75751af60131cc704270c0b4dc3c52e8957f6a4 /ishtar_common | |
parent | c56e12387267e4cabb3b3e364bd60222134148c7 (diff) | |
download | Ishtar-98b200c630474559eb13e48c173473bab7b3735b.tar.bz2 Ishtar-98b200c630474559eb13e48c173473bab7b3735b.zip |
ID generation: fix custom filters for jinja format
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/utils.py | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py index ed183e4d1..e6283ae5e 100644 --- a/ishtar_common/utils.py +++ b/ishtar_common/utils.py @@ -2002,18 +2002,18 @@ def get_generated_id(key, item): for key in set(key_list): _update_gen_id_dct(item, dct, key) tpl = Template(formula) - return tpl.render(dct) - - for fkey in PARSE_FORMULA.findall(formula): - filtered = fkey.split("|") - initial_key = fkey[:] - fkey = filtered[0] - filters = [] - for filtr in filtered[1:]: - if filtr in FORMULA_FILTERS: - filters.append(FORMULA_FILTERS[filtr]) - _update_gen_id_dct(item, dct, initial_key, fkey, filters=filters) - values = formula.format(**dct).split("||") + values = tpl.render(dct).split("||") + else: + for fkey in PARSE_FORMULA.findall(formula): + filtered = fkey.split("|") + initial_key = fkey[:] + fkey = filtered[0] + filters = [] + for filtr in filtered[1:]: + if filtr in FORMULA_FILTERS: + filters.append(FORMULA_FILTERS[filtr]) + _update_gen_id_dct(item, dct, initial_key, fkey, filters=filters) + values = formula.format(**dct).split("||") value = values[0] for filtr in values[1:]: if filtr not in FORMULA_FILTERS: |