def login(request): bad_credentials = False if request.method == 'POST': form = EmailPasswordForm(request.POST) if form.is_valid(): email = form.cleaned_data["email"] password = form.cleaned_data["password"] if len(password): user = authenticate(username=email, password=password) if user is not None and user.is_active: auth_login(request, user) return redirect("hc-checks") bad_credentials = True else: try: user = User.objects.get(email=email) except User.DoesNotExist: user = _make_user(email) _associate_demo_check(request, user) user.profile.send_instant_login_link() return redirect("hc-login-link-sent") else: form = EmailPasswordForm() bad_link = request.session.pop("bad_link", None) ctx = { "form": form, "bad_credentials": bad_credentials, "bad_link": bad_link } return render(request, "accounts/login.html", ctx)
def login(request): bad_credentials = False if request.method == "POST": form = EmailPasswordForm(request.POST) if form.is_valid(): email = form.cleaned_data["email"] password = form.cleaned_data["password"] if len(password): user = authenticate(username=email, password=password) if user is not None and user.is_active: auth_login(request, user) return redirect("hc-checks") bad_credentials = True else: try: user = User.objects.get(email=email) except User.DoesNotExist: user = _make_user(email) _associate_demo_check(request, user) profile = Profile.objects.for_user(user) profile.send_instant_login_link() return redirect("hc-login-link-sent") else: form = EmailPasswordForm() bad_link = request.session.pop("bad_link", None) ctx = {"form": form, "bad_credentials": bad_credentials, "bad_link": bad_link} return render(request, "accounts/login.html", ctx)
def login(request): form = EmailPasswordForm() magic_form = ExistingEmailForm() if request.method == 'POST': if request.POST.get("action") == "login": form = EmailPasswordForm(request.POST) if form.is_valid(): auth_login(request, form.user) return _redirect_after_login(request) else: magic_form = ExistingEmailForm(request.POST) if magic_form.is_valid(): profile = Profile.objects.for_user(magic_form.user) redirect_url = request.GET.get("next") if _is_whitelisted(redirect_url): profile.send_instant_login_link(redirect_url=redirect_url) else: profile.send_instant_login_link() return redirect("hc-login-link-sent") bad_link = request.session.pop("bad_link", None) ctx = { "page": "login", "form": form, "magic_form": magic_form, "bad_link": bad_link } return render(request, "accounts/login.html", ctx)
def login(request): bad_credentials = False if request.method == "POST": form = EmailPasswordForm(request.POST) if form.is_valid(): email = form.cleaned_data["email"] if settings.ALLOWED_DOMAIN: domain = email.split("@")[1] if domain != settings.ALLOWED_DOMAIN.lower(): return HttpResponseBadRequest("invalid email domain") password = form.cleaned_data["password"] if len(password): user = authenticate(username=email, password=password) if user is not None and user.is_active: auth_login(request, user) return redirect("hc-checks") bad_credentials = True else: try: user = User.objects.get(email=email) except User.DoesNotExist: user = _make_user(email) _associate_demo_check(request, user) user.profile.send_instant_login_link() return redirect("hc-login-link-sent") else: form = EmailPasswordForm() bad_link = request.session.pop("bad_link", None) ctx = {"form": form, "bad_credentials": bad_credentials, "bad_link": bad_link} return render(request, "accounts/login.html", ctx)