Move middleware to users

This commit is contained in:
Christian Cueni 2021-05-18 13:45:57 +02:00
parent ededdc6079
commit 861c276960
3 changed files with 18 additions and 13 deletions

View File

@ -1,12 +1,10 @@
import json
import re
from django.conf import settings
from django.http import Http404, HttpResponsePermanentRedirect, HttpResponse
from django.http import Http404, HttpResponsePermanentRedirect
from django.shortcuts import redirect
from django.utils.deprecation import MiddlewareMixin
from core.utils import is_private_api_call_allowed
try:
from threading import local
@ -99,12 +97,3 @@ class UserLoggedInCookieMiddleWare(MiddlewareMixin):
response.delete_cookie(self.cookie_name)
return response
class UserHasLicenseMiddleWare(MiddlewareMixin):
def process_response(self, request, response):
if request.path == '/api/graphql/':
if not is_private_api_call_allowed(request.user, request.body):
return HttpResponse(json.dumps({'errors': ['no active license']}), status=402)
return response

View File

@ -131,7 +131,7 @@ MIDDLEWARE += [
'core.middleware.ThreadLocalMiddleware',
'core.middleware.CommonRedirectMiddleware',
'core.middleware.UserLoggedInCookieMiddleWare',
'core.middleware.UserHasLicenseMiddleWare',
'users.middleware.UserHasLicenseMiddleWare',
]
ROOT_URLCONF = 'core.urls'

View File

@ -0,0 +1,16 @@
import json
from django.http import HttpResponse
from django.utils.deprecation import MiddlewareMixin
from core.utils import is_private_api_call_allowed
class UserHasLicenseMiddleWare(MiddlewareMixin):
def process_response(self, request, response):
if request.path == '/api/graphql/':
if not is_private_api_call_allowed(request.user, request.body):
return HttpResponse(json.dumps({'errors': ['no active license']}), status=402)
return response