starting to write login code
authorChristopher Allan Webber <cwebber@dustycloud.org>
Sun, 3 Apr 2011 21:32:01 +0000 (16:32 -0500)
committerChristopher Allan Webber <cwebber@dustycloud.org>
Sun, 3 Apr 2011 21:36:03 +0000 (16:36 -0500)
mediagoblin/auth/views.py

index d60e9157254fb9b66093f9425a503cd5652e4584..cbf7c8169870891d9432fedde10d44ba5039946d 100644 (file)
@@ -68,5 +68,39 @@ def register_success(request):
             {'request': request}))
 
 
-def login():
-    pass
+def login(request):
+    login_form = auth_forms.LoginForm(request.POST)
+
+    if request.method == 'POST' and login_form.validate():
+        #try:
+        user = request.db.User.find_one(
+            {'username': request.POST['username']})
+
+        if user.check_login(request.POST['password']):
+            # set up login in session
+            request.session['user_id'] = unicode(user['_id'])
+
+            import pdb
+            pdb.set_trace()
+
+
+        else:
+            # Prevent detecting who's on this system by testing login
+            # attempt timings
+            auth_lib.fake_login_attempt()
+
+    # render
+    template = request.template_env.get_template(
+        'mediagoblin/auth/login.html')
+    return Response(
+        template.render(
+            {'request': request,
+             'login_form': login_form}))
+
+
+def logout(request):
+    template = request.template_env.get_template(
+        'mediagoblin/auth/logout.html')
+    return Response(
+        template.render(
+            {'request': request}))