2022-12-10 23:25:48 -08:00
|
|
|
from functools import wraps
|
|
|
|
|
|
|
|
from django.http import JsonResponse
|
|
|
|
|
|
|
|
|
|
|
|
def identity_required(function):
|
|
|
|
"""
|
|
|
|
API version of the identity_required decorator that just makes sure the
|
|
|
|
token is tied to one, not an app only.
|
|
|
|
"""
|
|
|
|
|
|
|
|
@wraps(function)
|
|
|
|
def inner(request, *args, **kwargs):
|
|
|
|
# They need an identity
|
|
|
|
if not request.identity:
|
|
|
|
return JsonResponse({"error": "identity_token_required"}, status=400)
|
|
|
|
return function(request, *args, **kwargs)
|
|
|
|
|
2023-02-07 11:07:15 -08:00
|
|
|
# This is for the API only
|
|
|
|
inner.csrf_exempt = True
|
|
|
|
|
2022-12-10 23:25:48 -08:00
|
|
|
return inner
|