K356/k356/users/views.py
2024-09-26 23:59:03 +02:00

49 lines
1.1 KiB
Python

import json
from django.contrib.auth.decorators import login_required
from django.utils.translation import gettext as _
from django.http import JsonResponse
login_required()
def k356_validate(request):
us = request.user.setting
if request.method == "POST":
try:
fingerprint = json.loads(request.body)["fingerprint"]
except Exception as e:
return JsonResponse(
{
"ok": False,
"error": str(e),
}
)
if us.k356_key_fingerprint:
if us.k356_key_fingerprint != fingerprint:
return JsonResponse(
{
"ok": False,
"error": _("Unable to verify key."),
}
)
else:
us.k356_key = True
us.k356_key_fingerprint = fingerprint
us.save()
return JsonResponse(
{
"ok": True
}
)
return JsonResponse(
{
"key": us.k356_key,
"fingerprint": us.k356_key_fingerprint,
}
)