diff --git a/passbook/core/auth/view.py b/passbook/core/auth/view.py index a63561aba..74914e91b 100644 --- a/passbook/core/auth/view.py +++ b/passbook/core/auth/view.py @@ -9,6 +9,7 @@ from django.views.generic import View from passbook.core.models import Factor, User from passbook.core.views.utils import PermissionDeniedView from passbook.lib.utils.reflection import class_to_path, path_to_class +from passbook.lib.utils.urls import is_url_absolute LOGGER = getLogger(__name__) @@ -39,7 +40,6 @@ class AuthenticationView(UserPassesTestMixin, View): return redirect(reverse('passbook_core:overview')) def dispatch(self, request, *args, **kwargs): - print(request.session.keys()) # Extract pending user from session (only remember uid) if AuthenticationView.SESSION_PENDING_USER in request.session: self.pending_user = get_object_or_404( @@ -122,7 +122,9 @@ class AuthenticationView(UserPassesTestMixin, View): LOGGER.debug("Logged in user %s", self.pending_user) # Cleanup self._cleanup() - # TODO: ?next=... + next_param = self.request.GET.get('next', None) + if next_param and is_url_absolute(next_param): + return redirect(next_param) return redirect(reverse('passbook_core:overview')) def _cleanup(self): @@ -132,7 +134,6 @@ class AuthenticationView(UserPassesTestMixin, View): for key in session_keys: if key in self.request.session: del self.request.session[key] - print(self.request.session.keys()) LOGGER.debug("Cleaned up sessions") class FactorPermissionDeniedView(PermissionDeniedView): diff --git a/passbook/core/templates/base/skeleton.html b/passbook/core/templates/base/skeleton.html index 5334d5a0c..038d0a5f6 100644 --- a/passbook/core/templates/base/skeleton.html +++ b/passbook/core/templates/base/skeleton.html @@ -15,6 +15,12 @@ + {% block head %} {% endblock %} diff --git a/passbook/core/templates/login/base.html b/passbook/core/templates/login/base.html index d35db2556..429f90c62 100644 --- a/passbook/core/templates/login/base.html +++ b/passbook/core/templates/login/base.html @@ -5,53 +5,57 @@ {% block head %} {% endblock %} {% block body %}
{{ config.login.subtext }}
- {% endif %} -{{ config.login.subtext }}
+ {% endif %} +