From 5c581d898438de1141a6e7d11f449ec27975d0b4 Mon Sep 17 00:00:00 2001 From: Ludovic Stephan Date: Wed, 27 Nov 2019 13:14:20 +0100 Subject: [PATCH] Cleanup + no msg on CAS logout --- gestioncof/views.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gestioncof/views.py b/gestioncof/views.py index 87ee9d2e..ced35cfc 100644 --- a/gestioncof/views.py +++ b/gestioncof/views.py @@ -113,13 +113,13 @@ class CustomCasLogoutView(CasLogoutView): qd = parse_qs(parse_result.query) if "url" in qd.keys(): - # je ne vois pas bien pourquoi il faut un 2e "pop"... + # Le 2e pop est nécessaire car CAS n'aime pas + # les paramètres sous forme de liste qd["service"] = qd.pop("url").pop() # La méthode _replace est documentée ! new_url = parse_result._replace(query=urlencode(qd)) - print(qd) - print(urlunparse(new_url)) + return redirect(urlunparse(new_url)) @@ -131,7 +131,11 @@ def logout(request, next_page=None): profile = getattr(request.user, "profile", None) if profile and profile.login_clipper: - msg = _("Déconnexion de GestioCOF et CAS réussie. À bientôt {}.") + if next_page is None: + # On ne voit pas les messages quand on se déconnecte de CAS + msg = None + else: + msg = _("Déconnexion de GestioCOF et CAS réussie. À bientôt {}.") logout_view = CustomCasLogoutView.as_view() else: msg = _("Déconnexion de GestioCOF réussie. À bientôt {}.") @@ -139,7 +143,8 @@ def logout(request, next_page=None): next_page=next_page, template_name="logout.html" ) - messages.success(request, msg.format(request.user.get_short_name())) + if msg is not None: + messages.success(request, msg.format(request.user.get_short_name())) return logout_view(request)