summaryrefslogtreecommitdiffstats
path: root/api/decorators.py
diff options
context:
space:
mode:
authorAndrew Godwin2022-12-11 00:25:48 -0700
committerAndrew Godwin2022-12-12 11:56:49 -0700
commit3e062aed360ca54c26733b175d00d0d4671f3591 (patch)
tree6109169ac8886a4e38cf0e9816e56e74417a5ade /api/decorators.py
parent1017c71ba1d80a1690e357a938ad46f246a456ae (diff)
downloadtakahe-3e062aed360ca54c26733b175d00d0d4671f3591.tar.gz
takahe-3e062aed360ca54c26733b175d00d0d4671f3591.tar.bz2
takahe-3e062aed360ca54c26733b175d00d0d4671f3591.zip
Timelines working
Diffstat (limited to 'api/decorators.py')
-rw-r--r--api/decorators.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/api/decorators.py b/api/decorators.py
new file mode 100644
index 0000000..b60cc05
--- /dev/null
+++ b/api/decorators.py
@@ -0,0 +1,19 @@
+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)
+
+ return inner