diff options
Diffstat (limited to 'api/user/preferences.py')
-rw-r--r-- | api/user/preferences.py | 51 |
1 files changed, 31 insertions, 20 deletions
diff --git a/api/user/preferences.py b/api/user/preferences.py index d4e27c9..2feaade 100644 --- a/api/user/preferences.py +++ b/api/user/preferences.py @@ -4,38 +4,49 @@ from ruleset import resolve_ruleset from hierarchy import auth_required import json + # fill missing dict keys in preferences object def format_preferences(prefs): - return { - "darkMode": prefs.get("darkMode") or False, - "ruleset": resolve_ruleset(json.dumps(prefs.get("ruleset") or {}) or "default"), - "userColors": { - "diskA": prefs.get("userColors", {}).get("diskA") or "", - "diskB": prefs.get("userColors", {}).get("diskB") or "", - "background": prefs.get("userColors", {}).get("background") or "" - } - } + return { + "darkMode": + prefs.get("darkMode") or False, + "ruleset": + resolve_ruleset(json.dumps(prefs.get("ruleset") or {}) or "default"), + "userColors": { + "diskA": prefs.get("userColors", {}).get("diskA") or "", + "diskB": prefs.get("userColors", {}).get("diskB") or "", + "background": prefs.get("userColors", {}).get("background") or "" + } + } + preferences = Blueprint('preferences', __name__) -@preferences.route('/preferences', methods = ["GET"]) + +@preferences.route('/preferences', methods=["GET"]) @auth_required("user") def get_preferences(login): - user_prefs = cursor.execute("select preferences from users where user_id = ?", [login]).fetchone() - return { "preferences": format_preferences(json.loads(user_prefs[0])) }, 200 + user_prefs = cursor.execute( + "select preferences from users where user_id = ?", [login] + ).fetchone() + return {"preferences": format_preferences(json.loads(user_prefs[0]))}, 200 -@preferences.route('/preferences', methods = ["POST"]) + +@preferences.route('/preferences', methods=["POST"]) @auth_required("user") def index(login): - data = request.get_json() - new_preferences = data.get("newPreferences") or "" + data = request.get_json() + new_preferences = data.get("newPreferences") or "" - formatted_json = format_preferences(new_preferences) + formatted_json = format_preferences(new_preferences) - cursor.execute("update users set preferences = ? where user_id = ?", [json.dumps(formatted_json), login]) - connection.commit() + cursor.execute( + "update users set preferences = ? where user_id = ?", + [json.dumps(formatted_json), login] + ) + connection.commit() - return "", 200 + return "", 200 -dynamic_route = ["/user", preferences] +dynamic_route = ["/user", preferences] |