reg/views.py
author nishanth
Fri, 09 Apr 2010 12:28:58 +0530
changeset 4 ededea9ad08b
parent 3 182f216da4a8
child 5 37e4027fba48
permissions -rw-r--r--
login and logout works .

from django.contrib.auth.models import User
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.decorators import login_required

from django.shortcuts import render_to_response, redirect

from workshop.reg import forms as reg_forms

from django.http import HttpResponse

def homepage(request):
    """ see if the user is active.
    If not, only show the re send activation email link.
    else show all the options in homepage.
    """

    user = request.user

    if not user.is_authenticated():
        return HttpResponse('not logged in<br><a href="/reg/login">login</a>')
    elif not user.is_active:
        return HttpResponse('not active<br /><a href="/reg/logout">logout</a>')
    else:
        return HttpResponse('you are ogey<br /><a href="/reg/logout">logout</a>')

def user_login(request):
    """ get the user object from e-mail and then check for password.
    """

    user = request.user
    if user.is_authenticated():
        return redirect('/reg')

    if request.method == "POST":
        form = reg_forms.LoginForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email']
            password = form.cleaned_data['password']
            username = User.objects.get(email__iexact=email).username

            user = authenticate(username=username, password=password)
            login(request, user)
            return redirect('/reg')
        else:
            return render_to_response('login.html', {'form':form})
    else:
        form = reg_forms.LoginForm()
        return render_to_response('login.html', {'form':form})

def user_logout(request):
    """ simply logout the user and redirect to homepage.
    """

    logout(request)
    print "logged out"
    return redirect('/reg')