From 03aa86485a6c7909b2dee7993bac0f255ad3b23c Mon Sep 17 00:00:00 2001 From: Patrick_Pluto Date: Wed, 2 Oct 2024 14:14:20 +0200 Subject: [PATCH] history backend tweaks --- app/backend/database.ts | 4 ++-- py/api.py | 12 ++++++++---- py/db.py | 41 +++++++++++++++++++++++++++++------------ 3 files changed, 39 insertions(+), 18 deletions(-) diff --git a/app/backend/database.ts b/app/backend/database.ts index d05cc17..90c69cf 100644 --- a/app/backend/database.ts +++ b/app/backend/database.ts @@ -68,7 +68,7 @@ export const changePassword = async (usernameOrEmail: string, password: string, export const getData = async (usernameOrEmail: string, password: string) => { const data = { - action: "get_data", + action: "get_settings", username: usernameOrEmail.includes('@') ? undefined : usernameOrEmail, email: usernameOrEmail.includes('@') ? usernameOrEmail : undefined, password, @@ -98,7 +98,7 @@ export const getName = async (usernameOrEmail: string, password: string): Promis export const changeData = async (usernameOrEmail: string, password: string, newData: any) => { const data = { - action: "change_data", + action: "change_settings", username: usernameOrEmail.includes('@') ? undefined : usernameOrEmail, email: usernameOrEmail.includes('@') ? usernameOrEmail : undefined, password, diff --git a/py/api.py b/py/api.py index 348c4ba..b9414ae 100644 --- a/py/api.py +++ b/py/api.py @@ -103,10 +103,14 @@ class API: return jsonify({'status': 200, 'response': self.db.add_user(sent_data)}) elif action == "change_password": return jsonify({'status': 200, 'response': self.db.update_password(sent_data)}) - elif action == "get_data": - return jsonify({'status': 200, 'response': self.db.get_data(sent_data)}) - elif action == "change_data": - return jsonify({'status': 200, 'response': self.db.change_data(sent_data)}) + elif action == "get_settings": + return jsonify({'status': 200, 'response': self.db.get_settings(sent_data)}) + elif action == "change_settings": + return jsonify({'status': 200, 'response': self.db.change_settings(sent_data)}) + elif action == "get_history": + return jsonify({'status': 200, 'response': self.db.get_history(sent_data)}) + elif action == "change_history": + return jsonify({'status': 200, 'response': self.db.change_history(sent_data)}) elif action == "check_credentials": return jsonify({'status': 200, 'response': self.db.check_credentials(sent_data)}) elif action == "delete_account": diff --git a/py/db.py b/py/db.py index c8317e3..5a15957 100644 --- a/py/db.py +++ b/py/db.py @@ -27,7 +27,7 @@ class DB: password = data.get('password') email = data.get('email') hashed_password = self.hash_password(password) - user_data = {"hashed_password": hashed_password, "email": email, "data": None} + user_data = {"hashed_password": hashed_password, "email": email, "settings": None, "history": None} if username not in self.database: self.database[username] = user_data self.save_database() @@ -43,15 +43,6 @@ class DB: self.save_database() return True - def change_data(self, data): - username = self.ensure_username(data) - if not self.check_credentials(data): - return False - - self.database[username]['data'] = data.get('data') - self.save_database() - return True - def update_password(self, data): username = self.ensure_username(data) new_password = data.get('new_password') @@ -74,12 +65,38 @@ class DB: print(stored_hashed_password == entered_hashed_password) return stored_hashed_password == entered_hashed_password - def get_data(self, data): + def change_settings(self, data): + username = self.ensure_username(data) + if not self.check_credentials(data): + return False + + self.database[username]['settings'] = data.get('data') + self.save_database() + return True + + def get_settings(self, data): username = self.ensure_username(data) if not self.check_credentials(data): return None - send_back = self.database[username].get('data') + send_back = self.database[username].get('settings') + return send_back + + def change_history(self, data): + username = self.ensure_username(data) + if not self.check_credentials(data): + return False + + self.database[username]['history'] = data.get('data') + self.save_database() + return True + + def get_history(self, data): + username = self.ensure_username(data) + if not self.check_credentials(data): + return None + + send_back = self.database[username].get('history') return send_back def get_email(self, data):