From 940eb6425f26e01e600e6e5cd7a35f7de29bc09d Mon Sep 17 00:00:00 2001
From: Robin Sonnabend <robin@fsmpi.rwth-aachen.de>
Date: Fri, 7 Jul 2017 19:36:28 +0200
Subject: [PATCH] Add option to make sessions permanent

/close #116
---
 server.py      | 1 +
 views/forms.py | 1 +
 2 files changed, 2 insertions(+)

diff --git a/server.py b/server.py
index cfb636c..730c2e0 100755
--- a/server.py
+++ b/server.py
@@ -1351,6 +1351,7 @@ def login():
         user = user_manager.login(form.username.data, form.password.data)
         if user is not None:
             session["auth"] = security_manager.hash_user(user)
+            session.permanent = form.permanent.data
             flash("Login successful, {}!".format(user.username), "alert-success")
             return redirect(request.args.get("next") or url_for("index"))
         else:
diff --git a/views/forms.py b/views/forms.py
index 7d42f07..f921df2 100644
--- a/views/forms.py
+++ b/views/forms.py
@@ -102,6 +102,7 @@ class IPNetworkField(Field):
 class LoginForm(FlaskForm):
     username = StringField("Benutzer", validators=[InputRequired("Bitte gib deinen Benutzernamen ein.")])
     password = PasswordField("Passwort", validators=[InputRequired("Bitte gib dein Passwort ein.")])
+    permanent = BooleanField("Eingeloggt bleiben?")
 
 class ProtocolTypeForm(FlaskForm):
     name = StringField("Name", validators=[InputRequired("Du musst einen Namen angeben.")])
-- 
GitLab