diff options
Diffstat (limited to 'archaeological_finds/wizards.py')
| -rw-r--r-- | archaeological_finds/wizards.py | 12 | 
1 files changed, 9 insertions, 3 deletions
| diff --git a/archaeological_finds/wizards.py b/archaeological_finds/wizards.py index 8ed7061e2..43f48ab59 100644 --- a/archaeological_finds/wizards.py +++ b/archaeological_finds/wizards.py @@ -246,12 +246,18 @@ class TreatmentN1Wizard(TreatmentBase):      def _update_char_initial_from_finds(self, initial, find, k, sep=' ; '):          r_k = "resulting_" + k -        if not getattr(find, k): +        value = getattr(find, k) +        if not value:              return initial +        value = value.strip()          if not initial[r_k]: -            initial[r_k] = getattr(find, k) +            initial[r_k] = value          else: -            initial[r_k] += sep + getattr(find, k) +            # new value is entirely inside the current value +            if value == initial[r_k] or (value + sep) in initial[r_k] or \ +                    (sep + value) in initial[r_k]: +                return initial +            initial[r_k] += sep + value          return initial      def get_form_initial(self, step, data=None): | 
