views.accounts_register: Remove almost all dependence on domain.

This commit is contained in:
Rishi Gupta
2016-11-08 16:36:54 -08:00
committed by Tim Abbott
parent 823915fa46
commit d5f99c4438

View File

@@ -104,31 +104,24 @@ def accounts_register(request):
unique_open_realm = get_unique_open_realm() unique_open_realm = get_unique_open_realm()
if unique_open_realm is not None: if unique_open_realm is not None:
realm = unique_open_realm realm = unique_open_realm
domain = realm.domain
elif prereg_user.referred_by: elif prereg_user.referred_by:
# If someone invited you, you are joining their realm regardless # If someone invited you, you are joining their realm regardless
# of your e-mail address. # of your e-mail address.
realm = prereg_user.referred_by.realm realm = prereg_user.referred_by.realm
domain = realm.domain
if not email_allowed_for_realm(email, realm): if not email_allowed_for_realm(email, realm):
return render_to_response("zerver/closed_realm.html", {"closed_domain_name": realm.name}) return render_to_response("zerver/closed_realm.html", {"closed_domain_name": realm.name})
elif prereg_user.realm: elif prereg_user.realm:
# You have a realm set, even though nobody referred you. This # You have a realm set, even though nobody referred you. This
# happens if you sign up through a special URL for an open # happens if you sign up through a special URL for an open
# realm. # realm.
domain = prereg_user.realm.domain realm = prereg_user.realm
realm = get_realm(domain)
elif realm_creation: elif realm_creation:
# For creating a new realm, there is no existing realm or domain # For creating a new realm, there is no existing realm or domain
realm = None realm = None
domain = None
elif settings.REALMS_HAVE_SUBDOMAINS: elif settings.REALMS_HAVE_SUBDOMAINS:
realm = get_realm_by_string_id(get_subdomain(request)) realm = get_realm_by_string_id(get_subdomain(request))
domain = realm.domain
else: else:
domain = resolve_email_to_domain(email) realm = get_realm(resolve_email_to_domain(email))
realm = get_realm(domain)
if realm and realm.deactivated: if realm and realm.deactivated:
# The user is trying to register for a deactivated realm. Advise them to # The user is trying to register for a deactivated realm. Advise them to
@@ -156,8 +149,11 @@ def accounts_register(request):
del request.session['authenticated_full_name'] del request.session['authenticated_full_name']
except KeyError: except KeyError:
pass pass
if realm is not None and realm.is_zephyr_mirror_realm and domain == "mit.edu": if realm is not None and realm.is_zephyr_mirror_realm:
# for MIT users, we can get an authoritative name from Hesiod # For MIT users, we can get an authoritative name from Hesiod.
# Technically we should check that this is actually an MIT
# realm, but we can cross that bridge if we ever get a non-MIT
# zephyr mirroring realm.
hesiod_name = compute_mit_user_fullname(email) hesiod_name = compute_mit_user_fullname(email)
form = RegistrationForm( form = RegistrationForm(
initial={'full_name': hesiod_name if "@" not in hesiod_name else ""}) initial={'full_name': hesiod_name if "@" not in hesiod_name else ""})
@@ -267,7 +263,7 @@ def accounts_register(request):
return render_to_response('zerver/register.html', return render_to_response('zerver/register.html',
{'form': form, {'form': form,
'company_name': domain, 'company_name': realm.name if realm is not None else '',
'email': email, 'email': email,
'key': key, 'key': key,
'full_name': request.session.get('authenticated_full_name', None), 'full_name': request.session.get('authenticated_full_name', None),