Further fix get_user_api_tokens for missing columns

parent cb5d5078
...@@ -1161,13 +1161,27 @@ def get_user_api_tokens(user_id: int) -> List[Dict[str, Any]]: ...@@ -1161,13 +1161,27 @@ def get_user_api_tokens(user_id: int) -> List[Dict[str, Any]]:
FROM user_api_tokens FROM user_api_tokens
WHERE user_id = ? ORDER BY created_at DESC WHERE user_id = ? ORDER BY created_at DESC
''', (user_id,)) ''', (user_id,))
except sqlite3.OperationalError: except sqlite3.OperationalError as e:
# Fallback if 'name' column doesn't exist if 'name' in str(e):
cursor.execute(''' # Fallback if 'name' column doesn't exist
SELECT id, created_at, last_used, active try:
FROM user_api_tokens cursor.execute('''
WHERE user_id = ? ORDER BY created_at DESC SELECT id, created_at, last_used, active
''', (user_id,)) FROM user_api_tokens
WHERE user_id = ? ORDER BY created_at DESC
''', (user_id,))
except sqlite3.OperationalError as e2:
if 'last_used' in str(e2):
# Fallback if 'last_used' also doesn't exist
cursor.execute('''
SELECT id, created_at, active
FROM user_api_tokens
WHERE user_id = ? ORDER BY created_at DESC
''', (user_id,))
else:
raise e2
else:
raise e
rows = cursor.fetchall() rows = cursor.fetchall()
conn.close() conn.close()
tokens = [] tokens = []
...@@ -1175,6 +1189,8 @@ def get_user_api_tokens(user_id: int) -> List[Dict[str, Any]]: ...@@ -1175,6 +1189,8 @@ def get_user_api_tokens(user_id: int) -> List[Dict[str, Any]]:
token_dict = dict(row) token_dict = dict(row)
if 'name' not in token_dict: if 'name' not in token_dict:
token_dict['name'] = 'Unnamed Token' # Default name token_dict['name'] = 'Unnamed Token' # Default name
if 'last_used' not in token_dict:
token_dict['last_used'] = None
tokens.append(token_dict) tokens.append(token_dict)
return tokens return tokens
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment