Bump babel from 2.9.1 to 2.10.3
[mygpo.git] / mygpo / administration / auth.py
bloba6b729f2017e7f526c0bb8b24113dcdaa5dc9939
1 from functools import wraps
3 from django.http import Http404, HttpResponseRedirect
4 from django.conf import settings
7 def require_staff(protected_view):
8 @wraps(protected_view)
9 def wrapper(request, *args, **kwargs):
11 staff_token = settings.STAFF_TOKEN
12 token_auth = staff_token is not None and staff_token == request.GET.get(
13 "staff", None
15 if token_auth:
16 return protected_view(request, *args, **kwargs)
18 if not request.user.is_authenticated:
19 return HttpResponseRedirect("/login/")
21 if request.user.is_staff:
22 return protected_view(request, *args, **kwargs)
24 raise Http404
26 return wrapper