X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=auth%2Fviews.py;h=f5db82d20dc2177fb4f2191ac509a9b29fb19d9c;hb=0c525feb926047f2b9e6cef63121d2d454aff35b;hp=3004c2ebfc421308910550e295318030b41c4f15;hpb=942f0c826530444332e45de0367b560e0af22b33;p=myslice.git diff --git a/auth/views.py b/auth/views.py index 3004c2eb..f5db82d2 100644 --- a/auth/views.py +++ b/auth/views.py @@ -2,11 +2,16 @@ from django.core.context_processors import csrf from django.template import RequestContext from django.shortcuts import render_to_response -from django.contrib.auth import authenticate, login +from django.contrib.auth import authenticate, login, logout +from django.http import HttpResponseRedirect + +from auth.backend import MyCustomBackend def login_user(request): state = "Please log in below..." username = password = '' + env={'hard_wired_users':MyCustomBackend.hard_wired_users} + if request.POST: username = request.POST.get('username') password = request.POST.get('password') @@ -16,10 +21,32 @@ def login_user(request): if user.is_active: login(request, user) state = "You're successfully logged in!" + return HttpResponseRedirect ('/') else: state = "Your account is not active, please contact the site admin." + env['state']=state; env['username']=username + return render_to_response('view-login.html',env, context_instance=RequestContext(request)) else: state = "Your username and/or password were incorrect." + env['state']=state; env['username']=username + return render_to_response('view-login.html',env, context_instance=RequestContext(request)) + else: + state='Welcome to MySlice' + env['state']=state; env['username']='' + return render_to_response('view-login.html',env, context_instance=RequestContext(request)) + +# hard question : where should we redirect requests to logout if user is not logged in ? +def logout_user (request): + # xxx check that we're indeed logged in + if not request.user.is_authenticated(): + return HttpResponseRedirect ('/') + return render_to_response('view-logout.html',{},context_instance=RequestContext(request)) + +def do_logout_user (request): + # xxx check that we're indeed logged in + if not request.user.is_authenticated(): + return HttpResponseRedirect ('/') + logout(request) + return HttpResponseRedirect ('/') + - return render_to_response('auth.html',{'state':state, 'username': username}, - context_instance=RequestContext(request))