summaryrefslogtreecommitdiff
path: root/allotter/views.py
blob: 037941f1f66c076906c887c4285aa50b24d2d26c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
from django.contrib.auth import login, logout, authenticate
from django.shortcuts import render_to_response, get_object_or_404, redirect
from django.template import RequestContext
from django.http import Http404

from allotter.models import Profile
from allotter.forms import RegistrationForm, UserLoginForm

from settings import URL_ROOT

def index(request):
    """The start page.
    """
    user = request.user
    if user.is_authenticated():
        return redirect("/allotter/hello/")

    return redirect("/allotter/login/")

def user_register(request):
    """ Register a new user.
    Create a user and corresponding profile and store roll_number also."""

    user = request.user
    if user.is_authenticated():
        return redirect("/allotter/hello/")

    if request.method == "POST":
        form = RegistrationForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            u_name, pwd = form.save()

            new_user = authenticate(username = u_name, password = pwd)
            login(request, new_user)
            return redirect("/allotter/login/")
                
        else:
            return render_to_response('allotter/register.html',
                {'form':form},
                context_instance=RequestContext(request))
    else:
        form = RegistrationForm()
        return render_to_response('allotter/register.html',
                {'form':form},
                context_instance=RequestContext(request))

def user_login(request):
    """Take the credentials of the user and log the user in."""

    user = request.user
    if user.is_authenticated():
        return redirect("/allotter/hello/")

    if request.method == "POST":
        form = UserLoginForm(request.POST)
        if form.is_valid():
            user = form.cleaned_data
            login(request, user)
            return redirect("/allotter/hello/")
        else:
            context = {"form": form}
            return render_to_response('allotter/login.html', context,
                        context_instance=RequestContext(request))
    else:
        form = UserLoginForm()
        context = {"form": form}
        return render_to_response('allotter/login.html', context,
                                     context_instance=RequestContext(request))

def hello(request):
    user = request.user
    context = {'user': user}
    ci = RequestContext(request)
    return render_to_response('allotter/hello.html', context, 
                                     context_instance=ci)