summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Post <cent@spline.de>2020-08-07 21:24:15 +0200
committerJonah BrĂ¼chert <jbb@kaidan.im>2023-05-22 00:28:13 +0200
commita4f09ba7440b4028cdc59fe10c71da6c9c3a849b (patch)
tree170b4993772c5f785617ff1ef3df25854134e9f1
parent92aa74b630388b3326a6e5bab8ff873b07791eac (diff)
downloadweb-a4f09ba7440b4028cdc59fe10c71da6c9c3a849b.tar.gz
web-a4f09ba7440b4028cdc59fe10c71da6c9c3a849b.tar.bz2
web-a4f09ba7440b4028cdc59fe10c71da6c9c3a849b.zip
compact_json is no longer importable from itsdangerous
-rw-r--r--accounts/utils/login.py19
1 files changed, 16 insertions, 3 deletions
diff --git a/accounts/utils/login.py b/accounts/utils/login.py
index 4267827..65e49ac 100644
--- a/accounts/utils/login.py
+++ b/accounts/utils/login.py
@@ -3,7 +3,20 @@ from flask import current_app
from flask_login import LoginManager, current_user
from functools import wraps
from werkzeug.exceptions import Forbidden
-from itsdangerous import base64_decode, base64_encode, compact_json
+from itsdangerous import base64_decode, base64_encode
+import json
+
+
+class _compact_json:
+ @staticmethod
+ def loads(payload):
+ return json.loads(payload)
+
+ @staticmethod
+ def dumps(obj, **kwargs):
+ kwargs.setdefault("ensure_ascii", False)
+ kwargs.setdefault("separators", (",", ":"))
+ return json.dumps(obj, **kwargs)
def create_login_manager():
@@ -25,11 +38,11 @@ def create_login_manager():
def create_userid(username, password):
userid = (username, password)
- return base64_encode(compact_json.dumps(userid))
+ return base64_encode(_compact_json.dumps(userid))
def parse_userid(value):
- return compact_json.loads(base64_decode(value))
+ return _compact_json.loads(base64_decode(value))
def logout_required(f):