Add theme selector
Some checks failed
Run Tests / run-tests (push) Failing after 39s

This commit is contained in:
2026-04-30 21:31:19 +02:00
parent 8ae8bc7a24
commit a88d1b4e79
11 changed files with 143 additions and 38 deletions

View File

@@ -87,7 +87,7 @@ def get_color_palettes():
return None
def get_color_palette():
def get_color_palette() -> int:
user_id = int(st.session_state.user_id)
try:
return int(connection().query('SELECT color_palette_id FROM users WHERE id = :id''', params={'id': user_id})['color_palette_id'][0])
@@ -123,3 +123,26 @@ def get_colors():
except Exception as e:
logger.error(e)
return None
def set_theme(theme:str):
user_id = int(st.session_state.user_id)
logger.info("Changing theme for user %d to %s", user_id, theme)
with connection().session as session:
try:
query = text('UPDATE users SET theme = :theme WHERE id = :user')
session.execute(query, {
'theme': theme,
'user': user_id
})
except Exception as e:
logger.error(e)
session.rollback()
def get_theme() -> str:
user_id = int(st.session_state.user_id)
try:
return connection().query('SELECT theme FROM users u WHERE u.id = :id', params={'id': user_id})['theme'][0]
except Exception as e:
logger.error(e)
return None