From 7d74003d0dbc8206761ef5430cfc7de3c517fd71 Mon Sep 17 00:00:00 2001 From: Lorenz Padberg Date: Wed, 12 Jul 2023 14:13:06 +0200 Subject: [PATCH] Enable login with email, like the form says --- server/users/schema/mutations_public.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/server/users/schema/mutations_public.py b/server/users/schema/mutations_public.py index 98000e73..e3ec36d2 100644 --- a/server/users/schema/mutations_public.py +++ b/server/users/schema/mutations_public.py @@ -2,7 +2,7 @@ import graphene from django.conf import settings from django.contrib.auth import authenticate, login from graphene import relay - +from users.models import User # from users.user_signup_login_handler import handle_user_and_verify_products, UNKNOWN_ERROR, EMAIL_NOT_VERIFIED @@ -19,6 +19,13 @@ class BetaLogin(relay.ClientIDMutation): if settings.ALLOW_BETA_LOGIN: password = kwargs.get('password_input') username = kwargs.get('username_input') + + # Login with email + if '@' in username: + user = User.objects.get(email=username) + if user: + username = user.username + user = authenticate(username=username, password=password) if user is None: raise Exception('invalid_credentials')