diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/forms.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index 2b6854b4a..31d1004c7 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -232,16 +232,24 @@ class CustomForm(BSForm): for idx, field in enumerate(field_hidden_items): key, c_field = field fields[key] = c_field + old_idx = 0 for idx, field in enumerate(field_items): - idx = (idx + 1) * 10 + if not idx and isinstance(self, TableSelect): + # search_vector field always first on search + idx = -1 + else: + idx = (idx + 1) * 10 key, c_field = field + # insert custom field in position for k in sorted(new_fields.keys()): - if idx - 10 <= k < idx: + if old_idx <= k < idx: alt_key, alt_field = new_fields.pop(k) alt_field.order_number = k fields[alt_key] = alt_field + old_idx = idx c_field.order_number = idx fields[key] = c_field + # custom field after classic fields for k in sorted(new_fields.keys()): alt_key, alt_field = new_fields.pop(k) alt_field.order_number = k |