feat(api): add /delete-acc-data and /delete-user-data routes
This commit is contained in:
parent
f13e3993e9
commit
dac1e10b5d
@ -55,6 +55,10 @@ class CM_API:
|
||||
# Update routes
|
||||
self.app.route('/update-acc-data', methods=['POST'])(self.update_acc_data)
|
||||
self.app.route('/update-user-data', methods=['POST'])(self.update_user_data)
|
||||
|
||||
# Delete routes
|
||||
self.app.route('/delete-acc-data', methods=['POST'])(self.delete_acc_data)
|
||||
self.app.route('/delete-user-data', methods=['POST'])(self.delete_user_data)
|
||||
|
||||
def _check_database_available(self):
|
||||
db = self._get_database_connection()
|
||||
@ -168,6 +172,58 @@ class CM_API:
|
||||
finally:
|
||||
self._close_database_connection(db)
|
||||
|
||||
def delete_acc_data(self):
|
||||
is_available, db, error_response = self._check_database_available()
|
||||
if not is_available:
|
||||
return error_response
|
||||
|
||||
try:
|
||||
data = request.get_json() or {}
|
||||
username = data.get('username')
|
||||
|
||||
if not username:
|
||||
return jsonify({"error": "Username is required"}), 400
|
||||
|
||||
result = db.execute(
|
||||
"DELETE FROM acc WHERE username = %s",
|
||||
[username]
|
||||
)
|
||||
|
||||
if result:
|
||||
return jsonify({"deleted": username})
|
||||
return jsonify({"error": "Failed to delete account"}), 500
|
||||
|
||||
except Exception as error:
|
||||
return self._handle_error(error, "Error deleting account"), 500
|
||||
finally:
|
||||
self._close_database_connection(db)
|
||||
|
||||
def delete_user_data(self):
|
||||
is_available, db, error_response = self._check_database_available()
|
||||
if not is_available:
|
||||
return error_response
|
||||
|
||||
try:
|
||||
data = request.get_json() or {}
|
||||
f_username = data.get('f_username')
|
||||
|
||||
if not f_username:
|
||||
return jsonify({"error": "f_username is required"}), 400
|
||||
|
||||
result = db.execute(
|
||||
"DELETE FROM user WHERE f_username = %s",
|
||||
[f_username]
|
||||
)
|
||||
|
||||
if result:
|
||||
return jsonify({"deleted": f_username})
|
||||
return jsonify({"error": "Failed to delete user"}), 500
|
||||
|
||||
except Exception as error:
|
||||
return self._handle_error(error, "Error deleting user"), 500
|
||||
finally:
|
||||
self._close_database_connection(db)
|
||||
|
||||
def run(self, port=3000, debug=None):
|
||||
if debug is None:
|
||||
debug = _debug_enabled()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user