From 6c3740b75d35659a62f022852c62c00c5cd3fa85 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Fri, 3 Aug 2018 17:46:12 +0200 Subject: [PATCH] return to manager after logout (fixes #25581) --- .../manager/templates/authentic2/manager/base.html | 2 +- tests/test_manager.py | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/authentic2/manager/templates/authentic2/manager/base.html b/src/authentic2/manager/templates/authentic2/manager/base.html index b1f3ed35..f49e864b 100644 --- a/src/authentic2/manager/templates/authentic2/manager/base.html +++ b/src/authentic2/manager/templates/authentic2/manager/base.html @@ -7,7 +7,7 @@ {% block page-title %}{% firstof manager_site_title site_title "Authentic2" %}{% endblock %} {% block site-title %}{% firstof manager_site_title site_title "Authentic2" %}{% endblock %} -{% block logout-url %}{% url 'auth_logout' %}{% endblock %} +{% block logout-url %}{% url 'auth_logout' %}?next={{ request.get_full_path|urlencode }}{% endblock %} {% block appbar %}

{% block page_title %}{{ title }}{% endblock %}

diff --git a/tests/test_manager.py b/tests/test_manager.py index be26ff0c..f9ef9471 100644 --- a/tests/test_manager.py +++ b/tests/test_manager.py @@ -680,3 +680,10 @@ def test_manager_ou(app, superuser_or_admin, ou1): assert len(ou_homepage.pyquery('span.true')) == 1 assert len(ou_homepage.pyquery('tr[data-pk="%s"] td.default span.true' % ou2.pk)) == 0 assert len(ou_homepage.pyquery('tr[data-pk="%s"] td.default span.true' % old_default.pk)) == 1 + + +def test_return_on_logout(superuser, app): + '''Verify we will return to /manage/ after logout/login cycle''' + manager_home_page = login(app, superuser, reverse('a2-manager-homepage')) + response = manager_home_page.click('Logout').maybe_follow() + assert response.request.query_string == 'next=/manage/' -- 2.18.0