From 2ec77520b8839f2d60c7f2ce89ee01b9df210b28 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Sat, 14 Mar 2015 00:49:23 +0100 Subject: [PATCH] Set attendee_name to None / delete snwer objects if answer is empty --- src/pretix/presale/views/checkout.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/pretix/presale/views/checkout.py b/src/pretix/presale/views/checkout.py index ba3bdc5099..9b2ccae2da 100644 --- a/src/pretix/presale/views/checkout.py +++ b/src/pretix/presale/views/checkout.py @@ -145,17 +145,20 @@ class CheckoutStart(EventViewMixin, CartDisplayMixin, EventLoginRequiredMixin, C for k, v in form.cleaned_data.items(): if k == 'attendee_name': form.cartpos = form.cartpos.clone() - form.cartpos.attendee_name = v + form.cartpos.attendee_name = v if v != '' else None form.cartpos.save() elif k.startswith('question_') and v is not None: field = form.fields[k] if hasattr(field, 'answer'): # We already have a cached answer object, so we don't # have to create a new one - field.answer = field.answer.clone() - field.answer.answer = v - field.answer.save() - else: + if v == '': + field.answer.delete() + else: + field.answer = field.answer.clone() + field.answer.answer = v + field.answer.save() + elif v != '': QuestionAnswer.objects.create( cartposition=form.cartpos, question=field.question,