summaryrefslogtreecommitdiff
path: root/django/contrib/auth/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'django/contrib/auth/views.py')
-rw-r--r--django/contrib/auth/views.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/django/contrib/auth/views.py b/django/contrib/auth/views.py
index 8a554b0ad8..fe21683323 100644
--- a/django/contrib/auth/views.py
+++ b/django/contrib/auth/views.py
@@ -72,6 +72,9 @@ def logout(request, next_page=None,
"""
auth_logout(request)
+ if next_page is not None:
+ next_page = resolve_url(next_page)
+
if redirect_field_name in request.REQUEST:
next_page = request.REQUEST[redirect_field_name]
# Security check -- don't allow redirection to a different host.
@@ -139,7 +142,9 @@ def password_reset(request, is_admin_site=False,
current_app=None,
extra_context=None):
if post_reset_redirect is None:
- post_reset_redirect = reverse('django.contrib.auth.views.password_reset_done')
+ post_reset_redirect = reverse('password_reset_done')
+ else:
+ post_reset_redirect = resolve_url(post_reset_redirect)
if request.method == "POST":
form = password_reset_form(request.POST)
if form.is_valid():
@@ -192,7 +197,9 @@ def password_reset_confirm(request, uidb36=None, token=None,
UserModel = get_user_model()
assert uidb36 is not None and token is not None # checked by URLconf
if post_reset_redirect is None:
- post_reset_redirect = reverse('django.contrib.auth.views.password_reset_complete')
+ post_reset_redirect = reverse('password_reset_complete')
+ else:
+ post_reset_redirect = resolve_url(post_reset_redirect)
try:
uid_int = base36_to_int(uidb36)
user = UserModel._default_manager.get(pk=uid_int)
@@ -242,7 +249,9 @@ def password_change(request,
password_change_form=PasswordChangeForm,
current_app=None, extra_context=None):
if post_change_redirect is None:
- post_change_redirect = reverse('django.contrib.auth.views.password_change_done')
+ post_change_redirect = reverse('password_change_done')
+ else:
+ post_change_redirect = resolve_url(post_change_redirect)
if request.method == "POST":
form = password_change_form(user=request.user, data=request.POST)
if form.is_valid():