From b8225bd206a2166413c471ea032ceb5451d4049b Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Sat, 10 Mar 2018 14:19:28 +0100 Subject: [PATCH] Stop creating an empty session on first request --- src/pretix/helpers/safedownload.py | 2 ++ src/pretix/multidomain/middlewares.py | 8 -------- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/src/pretix/helpers/safedownload.py b/src/pretix/helpers/safedownload.py index 3446a67916..209c72e9cc 100644 --- a/src/pretix/helpers/safedownload.py +++ b/src/pretix/helpers/safedownload.py @@ -4,6 +4,8 @@ from django.core.signing import BadSignature, TimestampSigner def get_token(request, answer): + if not request.session.session_key: + request.session.create() payload = '{}:{}'.format(request.session.session_key, answer.pk) signer = TimestampSigner() return signer.sign(hashlib.sha1(payload.encode()).hexdigest()) diff --git a/src/pretix/multidomain/middlewares.py b/src/pretix/multidomain/middlewares.py index e2ce989712..e3979cbbf6 100644 --- a/src/pretix/multidomain/middlewares.py +++ b/src/pretix/multidomain/middlewares.py @@ -79,14 +79,6 @@ class SessionMiddleware(BaseSessionMiddleware): a custom domain. """ - def process_request(self, request): - super().process_request(request) - - if not request.session.session_key: - # We need to create session even if we do not yet store something there, because we need the session - # key for e.g. saving the user's cart - request.session.create() - def process_response(self, request, response): try: accessed = request.session.accessed