Sessions only for admin/.

This commit is contained in:
Julien Palard 2018-05-19 10:05:04 +02:00
parent 194f7bb7e6
commit 709fb4be3d
3 changed files with 18 additions and 3 deletions

16
paste/middleware.py Normal file
View File

@ -0,0 +1,16 @@
from django.contrib.sessions.middleware import SessionMiddleware as DjangoSessionMiddleware
class SessionMiddleware(DjangoSessionMiddleware):
def process_request(self, request):
if 'admin' in request.path:
session_key = request.COOKIES.get(settings.SESSION_COOKIE_NAME)
request.session = self.SessionStore(session_key)
else:
request.session = {}
def process_response(self, request, response):
if 'admin' in request.path:
return super().process_response(request, response)
else:
return response

View File

@ -1,7 +1,7 @@
from . import renderers
from django.urls import reverse
from django.shortcuts import render, get_object_or_404
from django.http import HttpResponseRedirect
from django.http import HttpResponseRedirect, HttpResponse
from django.views.decorators.csrf import csrf_exempt
from .models import Paste, Language
from .forms import PasteForm
@ -14,7 +14,6 @@ def index(request):
"""Displays form."""
data = {'menu': 'index',
'max_characters': settings.PASTE['max_characters']}
# if request.method == 'PUT':
if request.method == 'POST':
paste = Paste(slug=random_id(Paste))
if request.FILES:

View File

@ -74,7 +74,7 @@ TEMPLATES = [
]
MIDDLEWARE = [
'django.contrib.sessions.middleware.SessionMiddleware',
'paste.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.common.CommonMiddleware',