Fix signup and let signup to an empty account.

master
Tom Hacohen 5 years ago
parent bced00dc8a
commit bd1d11fe5f

@ -219,12 +219,17 @@ class AuthenticationSignupSerializer(serializers.Serializer):
def create(self, validated_data): def create(self, validated_data):
"""Function that's called when this serializer creates an item""" """Function that's called when this serializer creates an item"""
user_data = validated_data.pop('user')
salt = validated_data.pop('salt') salt = validated_data.pop('salt')
pubkey = validated_data.pop('pubkey') pubkey = validated_data.pop('pubkey')
with transaction.atomic(): with transaction.atomic():
instance = User.objects.create(**validated_data) instance = User.objects.get_or_create(**user_data)
if hasattr(instance, 'userinfo'):
raise serializers.ValidationError('User already exists')
instance.set_unusable_password() instance.set_unusable_password()
# FIXME: send email verification
models.UserInfo.objects.create(salt=salt, pubkey=pubkey, owner=instance) models.UserInfo.objects.create(salt=salt, pubkey=pubkey, owner=instance)

Loading…
Cancel
Save