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, } )