Example #1
0
def login(request, *args, **kwargs):
    if request.method == 'POST':
        username = request.POST['username']
        password = request.POST['password']
        user = authenticate(username=username, password=password)
        if user:
            try:
                profile = user.profile
            except UserProfile.DoesNotExist:
                return render(request, "authentication/profile_not_set.html")
    return default_login(request, *args, **kwargs)
Example #2
0
def login(request):
    if request.method == "POST":
        username = request.POST['username']
        password = request.POST['password']
        if UserMethods.objects.filter(username=username).exists():
            user = UserMethods.objects.get(username=username)

            if user.check_password(password) and not user.confirmed():
                form = AuthenticationForm(data=request.POST)
                form.add_error(
                    None,
                    'Please confirm your email address before trying to log in'
                )
                context = {'form': form}
                return render(request,
                              'accounts/login-form.html',
                              context=context)

    return default_login(request, template_name='accounts/login-form.html')
Example #3
0
def ajaxable_login(request, template_name="registration/login.html", authentication_form=DoubleAuthenticationForm):
    """
    handle ajax and normal login.
    """
    # redirect to user profile if user is authenticated.
    if request.user.is_authenticated():
        redirect_to = request.user.get_absolute_url()
        return HttpResponseRedirect(redirect_to)
    if request.is_ajax():
        # POST only
        if request.method == "POST":
            data = json.loads(request.body)
            form = authentication_form(request, data=data)
            if form.is_valid():
                auth_login(request, form.get_user())
                return JsonResponse({"is_authenticated": True})
            else:
                form_errors = form.errors
                form_errors.update({"is_authenticated": False})
                return JsonResponse(form_errors)
        else:
            HttpResponseForbidden("403 Request Forbidden.")
    else:
        return default_login(request, template_name=template_name, authentication_form=authentication_form)
def login(request, **kwargs):
    kwargs.setdefault('authentication_form', AuthenticationForm)
    return default_login(request, **kwargs)