|
@@ -872,4 +872,61 @@ def sign_out_user(session_id):
|
|
|
cursor.execute('''
|
|
|
DELETE FROM sessions
|
|
|
WHERE user_id = (SELECT user_id FROM sessions s2 WHERE s2.session_id = ?)
|
|
|
- ''', (session_id,))
|
|
|
+ ''', (session_id,))
|
|
|
+
|
|
|
+
|
|
|
+def delete_user(user_id):
|
|
|
+ connect()
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM sessions
|
|
|
+ WHERE user_id = ?
|
|
|
+ ''', (user_id,))
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM orders
|
|
|
+ WHERE ownership_id IN (
|
|
|
+ SELECT rowid FROM ownership WHERE user_id = ?)
|
|
|
+ ''', (user_id,))
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM ownership
|
|
|
+ WHERE user_id = ?)
|
|
|
+ ''', (user_id,))
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM keys
|
|
|
+ WHERE used_by_user_id = ?)
|
|
|
+ ''', (user_id,))
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM users
|
|
|
+ WHERE rowid = ?))
|
|
|
+ ''', (user_id,))
|
|
|
+
|
|
|
+
|
|
|
+def delete_ownable(ownable_id):
|
|
|
+ connect()
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM transactions
|
|
|
+ WHERE ownable_id = ?
|
|
|
+ ''', (ownable_id,))
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM orders
|
|
|
+ WHERE ownership_id IN (
|
|
|
+ SELECT rowid FROM ownership WHERE ownable_id = ?)
|
|
|
+ ''', (ownable_id,))
|
|
|
+
|
|
|
+ # only delete empty ownerships
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM ownership
|
|
|
+ WHERE ownable_id = ?
|
|
|
+ AND amount = 0)
|
|
|
+ ''', (ownable_id,))
|
|
|
+
|
|
|
+ cursor.execute('''
|
|
|
+ DELETE FROM ownables
|
|
|
+ WHERE rowid = ?))
|
|
|
+ ''', (ownable_id,))
|