コード例 #1
0
def user_login(request):
    """Log in page view in order for the user to access his account"""

    # if this is a POST request we need to process the form data
    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = LoginForm(request.POST)
        # check whether it's valid:
        if form.is_valid():
            # process the data in form.cleaned_data and authenticate user with processed data
            user = authenticate(username=form.cleaned_data['username'],
                                password=form.cleaned_data['password'])
            if user is not None:
                # a backend authenticated the credentials
                if user.is_active:
                    login(request, user)
                    # redirects to user's account
                    return HttpResponseRedirect('/account/')

            else:
                messages.error(request,
                               'Le pseudo ou le mot de passe est incorrect.')

    # if a GET (or any other method) we'll create a blank form
    else:
        form = LoginForm()

    return render(request, 'app/login.html', {'form': form})
コード例 #2
0
def log_in(request):
    if request.method == 'POST':
        login_form = LoginForm(data=request.POST)
        if login_form.is_valid():
            response = {}
            data = {}
            user = authenticate(username=request.POST['login_username'], password=request.POST['login_password'])
            if user:
                if user.is_active:
                    login(request, user)
                    data['url'] = "http://%s%s" % (request.get_host(), '/')
                    response['success'] = 'success'
                    response['data'] = data
                    return HttpResponse(json.dumps(response), content_type='application/json')
                else:
                    # User is not active
                    data['errors'] = ["Your Account is disabled"]
                    response['data'] = data
                    response['failed'] = 'failed'
                    return HttpResponse(json.dumps(response), content_type='application/json')

            else:
                data['errors'] = ["Invalid login information"]
                response['data'] = data
                response['failed'] = 'failed'
                return HttpResponse(json.dumps(response), content_type='application/json')
    else:
        user_form = UserForm()
        login_form = LoginForm()
        return render(request, 'public/home.html', {'user_form': user_form, 'login_form': login_form})
コード例 #3
0
def log_in(request):
    if request.method == 'POST':
        login_form = LoginForm(data=request.POST)
        if login_form.is_valid():
            response = {}
            data = {}
            user = authenticate(username=request.POST['login_username'],
                                password=request.POST['login_password'])
            if user:
                if user.is_active:
                    login(request, user)
                    data['url'] = "http://%s%s" % (request.get_host(), '/')
                    response['success'] = 'success'
                    response['data'] = data
                    return HttpResponse(json.dumps(response),
                                        content_type='application/json')
                else:
                    # User is not active
                    data['errors'] = ["Your Account is disabled"]
                    response['data'] = data
                    response['failed'] = 'failed'
                    return HttpResponse(json.dumps(response),
                                        content_type='application/json')

            else:
                data['errors'] = ["Invalid login information"]
                response['data'] = data
                response['failed'] = 'failed'
                return HttpResponse(json.dumps(response),
                                    content_type='application/json')
    else:
        user_form = UserForm()
        login_form = LoginForm()
        return render(request, 'public/home.html', {
            'user_form': user_form,
            'login_form': login_form
        })
コード例 #4
0
ファイル: test_forms.py プロジェクト: aspidistras/empath-e
    def test_login_form(self):
        """Check that login form is valid"""

        form_data = {'username': '******', 'password': '******'}
        form = LoginForm(data=form_data)
        self.assertTrue(form.is_valid())