From e3e8295e47746ef101b8f3365b7dcf1fbb87e2f4 Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Fri, 17 Aug 2012 20:49:57 -0700 Subject: [PATCH] Fix test cookie logic set_test_cookie has to be in a separate request/response cycle than test_ and delete_test_cookie. Add some comments about what's going on. --- views.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/views.py b/views.py index a55eb69..4c23ebb 100644 --- a/views.py +++ b/views.py @@ -7,20 +7,24 @@ def index(request): have a session id) return the follower_graph view. Otherwise, render the index page.''' if request.method == 'POST': - request.session.set_test_cookie() return redirect('login') if 'sessionid' in request.session: return follower_graph(request) + # Set a test cookie. When the user clicks the 'Login' button, test and make + # sure this cookie was set properly. + request.session.set_test_cookie() return render_to_response('login.html') def login(request): '''Do a quick check to make sure cookies are enabled. If so, redirect to GitHub so the user can login.''' + # Make sure the user can accept cookies. if request.session.test_cookie_worked(): request.session.delete_test_cookie() return redirect('/login/github/') else: + # TODO: Render an error -- fix your damn cookies! return render_to_response('login.html')