dj2: use django's LoginView (#37317)

RemovedInDjango21Warning:
The login() view is superseded by the class-based LoginView().
This commit is contained in:
Lauréline Guérin 2019-10-29 15:36:31 +01:00
parent 5aa4061c27
commit 3c05e2d610
No known key found for this signature in database
GPG Key ID: 1FAB9B9B4F93D473
1 changed files with 13 additions and 7 deletions

View File

@ -27,13 +27,19 @@ else:
get_idps = lambda: []
def login(request, *args, **kwargs):
if any(get_idps()):
if not 'next' in request.GET:
return HttpResponseRedirect(resolve_url('mellon_login'))
return HttpResponseRedirect(resolve_url('mellon_login') + '?next='
+ quote(request.GET.get('next')))
return auth_views.login(request, *args, **kwargs)
class LoginView(auth_views.LoginView):
def dispatch(self, request, *args, **kwargs):
if any(get_idps()):
if 'next' not in request.GET:
return HttpResponseRedirect(resolve_url('mellon_login'))
return HttpResponseRedirect(resolve_url('mellon_login') + '?next='
+ quote(request.GET.get('next')))
return super(LoginView, self).dispatch(request, *args, **kwargs)
pass
login = LoginView.as_view()
def logout(request, next_page=None):
if any(get_idps()):