diff --git a/zerver/views/registration.py b/zerver/views/registration.py index 675cc937d1..af3a7b3e9e 100644 --- a/zerver/views/registration.py +++ b/zerver/views/registration.py @@ -14,7 +14,7 @@ from django.core import validators from zerver.context_processors import get_realm_from_request from zerver.models import UserProfile, Realm, Stream, MultiuseInvite, \ name_changes_disabled, email_to_username, email_allowed_for_realm, \ - get_realm, get_user_profile_by_email, get_default_stream_groups + get_realm, get_user, get_default_stream_groups from zerver.lib.send_email import send_email, FromAddress from zerver.lib.events import do_events_register from zerver.lib.actions import do_change_password, do_change_full_name, do_change_is_admin, \ @@ -168,9 +168,12 @@ def accounts_register(request: HttpRequest) -> HttpResponse: if 'timezone' in request.POST and request.POST['timezone'] in get_all_timezones(): timezone = request.POST['timezone'] - try: - existing_user_profile = get_user_profile_by_email(email) - except UserProfile.DoesNotExist: + if not realm_creation: + try: + existing_user_profile = get_user(email, realm) + except UserProfile.DoesNotExist: + existing_user_profile = None + else: existing_user_profile = None return_data = {} # type: Dict[str, bool]