aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/tools/session.py
diff options
context:
space:
mode:
authortilly-Q <nattilypigeonfowl@gmail.com>2013-07-29 18:40:19 -0400
committertilly-Q <nattilypigeonfowl@gmail.com>2013-07-29 18:40:19 -0400
commit52a355b27541597fc155dab5e4885207b12a0a7b (patch)
tree7d00edf4d9e39a6b7e4c838ca6f7cb07a4d9a51c /mediagoblin/tools/session.py
parentf26c21cd5b7998c903fa67aaf164c07743fee651 (diff)
parent08cd10d84fd89df3f0cad3835ba8ab8b8000d4b2 (diff)
downloadmediagoblin-52a355b27541597fc155dab5e4885207b12a0a7b.tar.lz
mediagoblin-52a355b27541597fc155dab5e4885207b12a0a7b.tar.xz
mediagoblin-52a355b27541597fc155dab5e4885207b12a0a7b.zip
Merge branch 'ticket-679' into OPW-Moderation-Update
Conflicts: mediagoblin/auth/tools.py mediagoblin/auth/views.py mediagoblin/db/migration_tools.py mediagoblin/db/migrations.py mediagoblin/db/models.py mediagoblin/decorators.py mediagoblin/user_pages/views.py
Diffstat (limited to 'mediagoblin/tools/session.py')
-rw-r--r--mediagoblin/tools/session.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/mediagoblin/tools/session.py b/mediagoblin/tools/session.py
index fdc32523..a57f69cc 100644
--- a/mediagoblin/tools/session.py
+++ b/mediagoblin/tools/session.py
@@ -17,10 +17,12 @@
import itsdangerous
import logging
-import crypto
+from mediagoblin.tools import crypto
_log = logging.getLogger(__name__)
+MAX_AGE = 30 * 24 * 60 * 60
+
class Session(dict):
def __init__(self, *args, **kwargs):
self.send_new_cookie = False
@@ -64,5 +66,10 @@ class SessionManager(object):
elif not session:
response.delete_cookie(self.cookie_name)
else:
+ if session.get('stay_logged_in', False):
+ max_age = MAX_AGE
+ else:
+ max_age = None
+
response.set_cookie(self.cookie_name, self.signer.dumps(session),
- httponly=True)
+ max_age=max_age, httponly=True)