diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2022-12-01 01:14:51 +0100 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2022-12-01 01:14:51 +0100 |
commit | ebdc591470af5d5b34b8b445b555cd5b73d5e42a (patch) | |
tree | f5bc7853ba81bf9a98d50ae98bcd1e76aca7e9f1 /mu4web | |
parent | Add "remember me". (diff) | |
download | mu4web-ebdc591470af5d5b34b8b445b555cd5b73d5e42a.tar.gz mu4web-ebdc591470af5d5b34b8b445b555cd5b73d5e42a.tar.xz |
Handle login prompt for logged in users.
Diffstat (limited to 'mu4web')
-rw-r--r-- | mu4web/main.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/mu4web/main.py b/mu4web/main.py index f822ba8..6e39f12 100644 --- a/mu4web/main.py +++ b/mu4web/main.py @@ -464,11 +464,19 @@ def attachement_part_page(): return attachement_response(attachement) -# TODO this page is really weird if you are already logged in @app.route('/login', methods=['GET']) def login_page_(): - body = login_page(request.args.get('returnto')) - return render_document(page_base(title='Login', body=body)) + returnto = request.args.get('returnto') + if current_user.is_authenticated: + # Redirect away already logged in users + if returnto: + return redirect(returnto) + else: + return redirect(url_for('index')) + else: + # Give the login prompt to non-logged in users. + body = login_page(returnto) + return render_document(page_base(title='Login', body=body)) @app.route('/login', methods=['POST']) |