diff options
Diffstat (limited to 'callbacks.py')
| -rw-r--r-- | callbacks.py | 110 |
1 files changed, 11 insertions, 99 deletions
diff --git a/callbacks.py b/callbacks.py index 1304d7e..2182d45 100644 --- a/callbacks.py +++ b/callbacks.py @@ -860,114 +860,26 @@ async def settings_callback(callback: CallbackQuery): await settings_handler(callback) -@router.callback_query(F.data.startswith("set_stream%")) -async def set_stream_callback(callback: CallbackQuery): +@router.callback_query(F.data.startswith("set%")) +async def set_setting_callback(callback: CallbackQuery): current_user_id = str(callback.from_user.id) - data = callback.data.split("%", 2) - user_id = data[1] - if user_id != current_user_id: - await callback.answer("нет, не трогай это не твое") - return - - new_status = callback.data.split("%")[2] - - config = get_user_config(user_id) - if new_status == "native" or new_status == "edit": - set_user_config( - user_id, - config.get("model"), - new_status, - config.get("call"), - config.get("prompt"), - config.get("notify"), - config.get("markdown"), - config.get("prompts"), - ) - else: - set_user_config( - user_id, - config.get("model"), - "none", - config.get("call"), - config.get("prompt"), - config.get("notify"), - config.get("markdown"), - config.get("prompts"), - ) - await settings_handler(callback) - - -@router.callback_query(F.data.startswith("set_call%")) -async def set_call_callback(callback: CallbackQuery): - current_user_id = str(callback.from_user.id) - data = callback.data.split("%", 2) - user_id = data[1] - if user_id != current_user_id: - await callback.answer("нет, не трогай это не твое") - return - - new_status = callback.data.split("%")[2] - - config = get_user_config(user_id) - set_user_config( - user_id, - config.get("model"), - config.get("stream"), - new_status, - config.get("prompt"), - config.get("notify"), - config.get("markdown"), - config.get("prompts") - ) - await settings_handler(callback) - - -@router.callback_query(F.data.startswith("set_notify%")) -async def set_notify_callback(callback: CallbackQuery): - current_user_id = str(callback.from_user.id) - data = callback.data.split("%", 2) - user_id = data[1] + data = callback.data.split("%", 3) + user_id = data[2] if user_id != current_user_id: await callback.answer("нет, не трогай это не твое") return - new_status = callback.data.split("%")[2] + new_status = callback.data.split("%")[3] config = get_user_config(user_id) - set_user_config( - user_id, - config.get("model"), - config.get("stream"), - config.get("call"), - config.get("prompt"), - new_status, - config.get("markdown"), - config.get("prompts") - ) - await settings_handler(callback) - -@router.callback_query(F.data.startswith("set_markdown%")) -async def set_markdown_callback(callback: CallbackQuery): - current_user_id = str(callback.from_user.id) - data = callback.data.split("%", 2) - user_id = data[1] - if user_id != current_user_id: - await callback.answer("нет, не трогай это не твое") - return - - new_status = data[2] - - config = get_user_config(user_id) - set_user_config( + alo = { + data[1]: new_status + } + + set_user_setting( user_id, - config.get("model"), - config.get("stream"), - config.get("call"), - config.get("prompt"), - config.get("notify"), - new_status, - config.get("prompts") + **alo ) await settings_handler(callback) |