Exemplo n.º 1
0
def main(request):
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            form.login(request)
            return redirect('users.views.home')
    else:
        form = LoginForm()
    return render(request, 'main.hisp', {'form': form})
Exemplo n.º 2
0
def guest(request):
    login_form = LoginForm(data=request.POST or None, prefix="login")
    register_form = RegistrationForm(data=request.POST or None,
                                     prefix="register")
    if request.POST:
        import pdb
        pdb.set_trace()
        if login_form.is_valid():
            user = login_form.login()
            if user.is_active:
                login(request, user)
                return redirect('users:index')
            else:
                messages.error(request, 'This account has been deleted.')
                return redirect('users:guest')
        elif register_form.is_valid():
            user = register_form.save()
            # FIXME change to validation email later
            login(request, user)
            return redirect('users:index')

    return render(request, "users/guest.html", {
        "login_form": login_form,
        "register_form": register_form
    })
Exemplo n.º 3
0
def login_page(request):
    if request.user.is_authenticated:
        return redirect("dashboard")

    # On a POST request, attempt to login
    form = LoginForm(request.POST if request.POST else None)
    if request.POST and form.is_valid():
        user = form.login(request)
        if user:
            login(request, user)
            redirect_url = request.GET.get("next", "dashboard")
            return redirect(redirect_url)

    return render(request, "login.html", context={"form": form})
Exemplo n.º 4
0
def login(request):
    """
    Login page.
    """
    if request.user.is_authenticated():
        return redirect('index')

    form = LoginForm(request.POST or None)

    if form.is_valid():
        try:
            user = form.login(request)
        except ValidationError as err:
            form._errors['__all__'] = err.messages
        else:
            return redirect('index')

    return {'form': form}
Exemplo n.º 5
0
def index(request):
    login_form = LoginForm(request.POST or None)

    if request.POST and login_form.is_valid():
        user = login_form.login()
        if user:
            login(request, user)
            return HttpResponseRedirect(
                request.POST.get('next') or reverse('index')
            )

    return render(
        request,
        "users/index.html",
        {
            "login_form": login_form,
            'next': request.GET.get('next', ''),
        }
    )