diff --git a/gregui/api/serializers/guest.py b/gregui/api/serializers/guest.py index b472fd809201a5cec9af4181bcf8cceee8423229..d38b30a8a07f2527a959cbbd9e5b46f0b03d198a 100644 --- a/gregui/api/serializers/guest.py +++ b/gregui/api/serializers/guest.py @@ -38,15 +38,9 @@ class GuestRegisterSerializer(serializers.ModelSerializer): value=email, ) else: - # Only expecting one private e-mail - private_email = Identity.objects.get( - person_id=instance.id, type=Identity.IdentityType.PRIVATE_EMAIL - ) + private_email = instance.private_email private_email.value = email private_email.save() - # TODO Figure out why the following did not work - # instance.private_email.value = email - # instance.private_email.save() if not instance.private_mobile: Identity.objects.create( @@ -55,8 +49,9 @@ class GuestRegisterSerializer(serializers.ModelSerializer): value=mobile_phone, ) else: - instance.private_mobile.value = mobile_phone - instance.private_mobile.save() + private_mobile = instance.private_mobile + private_mobile.value = mobile_phone + private_mobile.save() if "fnr" in validated_data: fnr = validated_data.pop("fnr") @@ -67,8 +62,9 @@ class GuestRegisterSerializer(serializers.ModelSerializer): value=fnr, ) else: - instance.fnr.value = fnr - instance.fnr.value.save() + fnr_existing = instance.fnr + fnr_existing.value = fnr + fnr_existing.save() # TODO: we only want to allow changing the name if we don't have one # from a reliable source (Feide/KORR)