From 761d349136b07180761f187ff07af4c7cfcb27fe Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Wed, 8 Mar 2017 16:27:45 +0100 Subject: [PATCH] registration: if confirm_data is 'required', only check for filling of required fields (fixes #15609) --- src/authentic2/registration_backend/views.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/authentic2/registration_backend/views.py b/src/authentic2/registration_backend/views.py index 65d982f..10d07de 100644 --- a/src/authentic2/registration_backend/views.py +++ b/src/authentic2/registration_backend/views.py @@ -212,8 +212,14 @@ class RegistrationCompletionView(CreateView): # Found one user, EMAIL is unique, log her in email_login(request, self.users[0]) return redirect(request, self.get_success_url()) - if all(field in self.token for field in self.fields) \ - and not self.token.get('confirm_data', False): + confirm_data = self.token.get('confirm_data', False) + + if confirm_data == 'required': + fields_to_confirm = self.required + else: + fields_to_confirm = self.fields + if (all(field in self.token for field in fields_to_confirm) + and not confirm_data): # We already have every fields form_kwargs = self.get_form_kwargs() form_class = self.get_form_class() -- 2.1.4