27 lines
773 B
Python
27 lines
773 B
Python
|
from django.contrib.auth.models import AnonymousUser
|
||
|
|
||
|
class FakeUser(AnonymousUser):
|
||
|
is_authenticated = True
|
||
|
is_anonymous = False
|
||
|
is_staff = True
|
||
|
is_active = True
|
||
|
is_superuser = True
|
||
|
username = "Fake user"
|
||
|
|
||
|
def has_module_perms(self, module):
|
||
|
# Don't allow access to the 'auth' app
|
||
|
# Also stops it showing up in the admin
|
||
|
return module not in {"auth"}
|
||
|
|
||
|
def has_perm(self, perm, obj=None):
|
||
|
return True
|
||
|
|
||
|
class FakeAuthenticationMiddleware:
|
||
|
def __init__(self, get_response):
|
||
|
self.get_response = get_response
|
||
|
|
||
|
def __call__(self, request):
|
||
|
# HACK: Inject our user in to user caches
|
||
|
request._cached_user = request._acached_user = FakeUser()
|
||
|
return self.get_response(request)
|