From 709bd2fddcea033d162f61a076ec82ce34969887 Mon Sep 17 00:00:00 2001 From: lonkaars Date: Thu, 11 Mar 2021 14:28:30 +0100 Subject: moved preferencesContext to seperate file + updatePreferences api endpoint --- api/user/updatePreferences.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 api/user/updatePreferences.py (limited to 'api/user/updatePreferences.py') diff --git a/api/user/updatePreferences.py b/api/user/updatePreferences.py new file mode 100644 index 0000000..2eb6512 --- /dev/null +++ b/api/user/updatePreferences.py @@ -0,0 +1,32 @@ +from flask import Blueprint, request +from db import cursor, connection +from auth.login_token import token_login +import json + +def format_preferences(preferences): #TODO: remove excess properties (create preferences class?) + return json.dumps(preferences) or "" + +updatePreferences = Blueprint('updatePreferences', __name__) + +@updatePreferences.route('/updatePreferences', methods = ['POST']) +def index(): + data = request.get_json() + + new_preferences = data.get("newPreferences") or "" + token = request.cookies.get("token") or "" + + if not token: return "", 401 + login = token_login(token) or "" + + if not login: return "", 403 + + formatted_json = format_preferences(new_preferences) + if not formatted_json: return "", 400 + + cursor.execute("update users set preferences = ? where user_id = ?", [formatted_json, login]) + connection.commit() + + return "", 200 + +dynamic_route = ["/user", updatePreferences] + -- cgit v1.2.3