From 8761ce22ed98779779925205835b5208cbf7ecd6 Mon Sep 17 00:00:00 2001 From: magicfelix <felix@felix-zauberer.de> Date: Thu, 13 Oct 2022 22:58:55 +0200 Subject: [PATCH] Create or update invited person according to preference --- aleksis/core/forms.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/aleksis/core/forms.py b/aleksis/core/forms.py index 05ebef2f4..136c6d38f 100644 --- a/aleksis/core/forms.py +++ b/aleksis/core/forms.py @@ -639,8 +639,12 @@ class AccountRegisterForm(SignupForm, ExtensibleForm): for field in Person._meta.get_fields(): if field.name in self.cleaned_data: data[field.name] = self.cleaned_data[field.name] - if not Person.objects.filter(email=data["email"]): - _person, created = Person.objects.update_or_create(user=user, **data) + person_qs = Person.objects.filter(email=data["email"]) + if not person_qs.exists(): + if get_site_preferences()["account__auto_create_person"]: + Person.objects.create(user=user, **data) + else: + person_qs.update(user=user, **data) self.custom_signup(request, user) setup_user_email(request, user, []) return user -- GitLab