Merge pull request #38 from peterarenot/master

Redirect from login view if user already logged in
pull/40/head
Karl Hobley 2014-02-14 10:27:16 +00:00
commit 40fc90e6fc
2 zmienionych plików z 16 dodań i 8 usunięć

Wyświetl plik

@ -6,13 +6,6 @@ from wagtail.wagtailadmin.forms import LoginForm, PasswordResetForm
urlpatterns = patterns( urlpatterns = patterns(
'django.contrib.auth.views', 'django.contrib.auth.views',
url(
r'^login/$', 'login', {
'template_name': 'wagtailadmin/login.html',
'authentication_form': LoginForm,
'extra_context': {'show_password_reset': getattr(settings, 'WAGTAIL_PASSWORD_MANAGEMENT_ENABLED', True)},
} , name='wagtailadmin_login'
),
url(r'^logout/$', 'logout', {'next_page': 'wagtailadmin_login'}), url(r'^logout/$', 'logout', {'next_page': 'wagtailadmin_login'}),
# Password reset # Password reset
@ -79,4 +72,11 @@ urlpatterns += patterns(
url(r'^account/$', 'account.account', name='wagtailadmin_account'), url(r'^account/$', 'account.account', name='wagtailadmin_account'),
url(r'^account/change_password/$', 'account.change_password', name='wagtailadmin_account_change_password'), url(r'^account/change_password/$', 'account.change_password', name='wagtailadmin_account_change_password'),
url(
r'^login/$', 'account.login_wrapper', {
'template_name': 'wagtailadmin/login.html',
'authentication_form': LoginForm,
'extra_context': {'show_password_reset': getattr(settings, 'WAGTAIL_PASSWORD_MANAGEMENT_ENABLED', True)},
} , name='wagtailadmin_login'
),
) )

Wyświetl plik

@ -2,6 +2,7 @@ from django.conf import settings
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.contrib import messages from django.contrib import messages
from django.contrib.auth.forms import SetPasswordForm from django.contrib.auth.forms import SetPasswordForm
from django.contrib.auth.views import login
def account(request): def account(request):
@ -31,3 +32,10 @@ def change_password(request):
'form': form, 'form': form,
'can_change_password': can_change_password, 'can_change_password': can_change_password,
}) })
# Wrap login view to prevent logged in users accessing the page
def login_wrapper(request, **kwargs):
if request.user.is_authenticated():
return redirect(settings.LOGIN_REDIRECT_URL)
else:
return login(request, **kwargs)