--- a/project/scipycon/user/views.py Tue Jul 20 19:27:51 2010 +0530
+++ b/project/scipycon/user/views.py Tue Jul 20 19:28:45 2010 +0530
@@ -55,8 +55,6 @@
else:
photo = '/img/user-default.png'
- qstring = ""
-
wifi_comment = None
if wifiobj:
wifi_form = False
@@ -105,7 +103,8 @@
profile.about = form.data.get("about")
profile.save()
- redirect_to = reverse("scipycon_account")
+ redirect_to = reverse('scipycon_account',
+ kwargs={'scope': scope})
return set_message_cookie(redirect_to,
msg = u"Your profile has been changed.")
@@ -119,14 +118,16 @@
})
return render_to_response(template_name, RequestContext(request, {
- "form": form
+ 'params': {'scope': scope},
+ 'form': form
}))
def login(request, scope, template_name="user/login.html"):
"""Custom view to login or register/login a user.
- Integration of register and login form
- It uses Django's standard AuthenticationForm, though.
+ Integration of register and login form
+ It uses Django's standard AuthenticationForm, though.
"""
+
user = request.user
if user.is_authenticated():
redirect_to = reverse("scipycon_account", kwargs={'scope': scope})
@@ -144,7 +145,8 @@
redirect_to = request.POST.get("next")
# Light security check -- make sure redirect_to isn't garbage.
if not redirect_to or '//' in redirect_to or ' ' in redirect_to:
- redirect_to = reverse("scipycon_account")
+ redirect_to = reverse('scipycon_account',
+ kwargs={'scope': scope})
from django.contrib.auth import login
login(request, login_form.get_user())
@@ -159,7 +161,8 @@
redirect_to = request.POST.get("next")
if not redirect_to or '//' in redirect_to or ' ' in redirect_to:
- redirect_to = reverse("scipycon_account")
+ redirect_to = reverse('scipycon_account',
+ kwargs={'scope': scope})
return set_message_cookie(
redirect_to, msg = u"You have been registered and logged in.")
@@ -169,8 +172,10 @@
if next_url is None:
next_url = request.META.get("HTTP_REFERER")
if next_url is None:
- next_url = reverse("scipycon_account")
- # Get just the path of the url. See django.contrib.auth.views.login for more
+ next_url = reverse('scipycon_account', kwargs={'scope': scope})
+
+ # Get just the path of the url.
+ # See django.contrib.auth.views.login for more
next_url = urlparse(next_url)
next_url = next_url[2]
@@ -193,23 +198,25 @@
The reason to use a custom logout method is just to provide a login and a
logoutmethod on one place.
"""
+
from django.contrib.auth import logout
logout(request)
- redirect_to = '/'
+ redirect_to = '/%s' % (scope)
return set_message_cookie(redirect_to, msg = u"You have been logged out.")
@login_required
-def password(request, scope, template_name="user/password.html"):
+def password(request, scope, template_name='user/password.html'):
"""Changes the password of current user.
"""
- if request.method == "POST":
+
+ if request.method == 'POST':
form = PasswordChangeForm(request.user, request.POST)
if form.is_valid():
form.save()
- redirect_to = reverse("scipycon_account")
+ redirect_to = reverse('scipycon_account', kwargs={'scope': scope})
return set_message_cookie(redirect_to,
- msg = u"Your password has been changed.")
+ msg = u'Your password has been changed.')
else:
form = PasswordChangeForm(request.user)
@@ -219,22 +226,26 @@
}))
@login_required
-def username(request, scope, template_name="user/username.html"):
+def username(request, scope, template_name='user/username.html'):
"""Saves the username from the data form.
"""
- if request.method == "POST":
- username_form = UsernameForm(initial={"username" : request.user.username}, data=request.POST)
+ if request.method == 'POST':
+ username_form = UsernameForm(
+ initial={'username' : request.user.username},
+ data=request.POST)
if username_form.is_valid():
request.user.username = username_form.cleaned_data.get("username")
request.user.save()
- redirect_to = reverse("scipycon_account")
+ redirect_to = reverse('scipycon_account',
+ kwargs={'scope': scope})
return set_message_cookie(redirect_to,
msg = u"Your username has been changed.")
else:
username_form = UsernameForm(initial={"username" : request.user.username})
return render_to_response(template_name, RequestContext(request, {
- "form": username_form
+ 'params': {'scope': scope},
+ 'form': username_form
}))
@@ -271,4 +282,4 @@
json_response = {'results': results}
- return HttpResponse(json.dumps(json_response))
\ No newline at end of file
+ return HttpResponse(json.dumps(json_response))