mirror of
https://github.com/BEDOLAGA-DEV/remnawave-bedolaga-telegram-bot.git
synced 2026-03-02 08:11:32 +00:00
Revert "Enable direct bot configuration edits from setting view"
This commit is contained in:
@@ -79,22 +79,6 @@ def _parse_category_payload(payload: str) -> Tuple[str, str, int, int]:
|
||||
return group_key, category_key, category_page, settings_page
|
||||
|
||||
|
||||
async def _remember_setting_context(
|
||||
state: FSMContext,
|
||||
key: str,
|
||||
group_key: str,
|
||||
category_page: int,
|
||||
settings_page: int,
|
||||
) -> None:
|
||||
await state.update_data(
|
||||
setting_key=key,
|
||||
setting_group_key=group_key,
|
||||
setting_category_page=category_page,
|
||||
setting_settings_page=settings_page,
|
||||
)
|
||||
await state.set_state(BotConfigStates.waiting_for_value)
|
||||
|
||||
|
||||
def _parse_group_payload(payload: str) -> Tuple[str, int]:
|
||||
parts = payload.split(":")
|
||||
group_key = parts[1] if len(parts) > 1 else CATEGORY_FALLBACK_KEY
|
||||
@@ -365,9 +349,6 @@ def _render_setting_text(key: str) -> str:
|
||||
f"<b>Текущее значение:</b> {summary['current']}",
|
||||
f"<b>Значение по умолчанию:</b> {summary['original']}",
|
||||
f"<b>Переопределено в БД:</b> {'✅ Да' if summary['has_override'] else '❌ Нет'}",
|
||||
"",
|
||||
"Отправьте новое значение сообщением, чтобы обновить настройку.",
|
||||
"Или используйте кнопки ниже для дополнительных действий.",
|
||||
]
|
||||
|
||||
return "\n".join(lines)
|
||||
@@ -379,7 +360,6 @@ async def show_bot_config_menu(
|
||||
callback: types.CallbackQuery,
|
||||
db_user: User,
|
||||
db: AsyncSession,
|
||||
state: FSMContext,
|
||||
):
|
||||
keyboard = _build_groups_keyboard()
|
||||
await callback.message.edit_text(
|
||||
@@ -387,7 +367,6 @@ async def show_bot_config_menu(
|
||||
reply_markup=keyboard,
|
||||
)
|
||||
await callback.answer()
|
||||
await state.clear()
|
||||
|
||||
|
||||
@admin_required
|
||||
@@ -396,7 +375,6 @@ async def show_bot_config_group(
|
||||
callback: types.CallbackQuery,
|
||||
db_user: User,
|
||||
db: AsyncSession,
|
||||
state: FSMContext,
|
||||
):
|
||||
group_key, page = _parse_group_payload(callback.data)
|
||||
grouped = _get_grouped_categories()
|
||||
@@ -413,7 +391,6 @@ async def show_bot_config_group(
|
||||
reply_markup=keyboard,
|
||||
)
|
||||
await callback.answer()
|
||||
await state.clear()
|
||||
|
||||
|
||||
@admin_required
|
||||
@@ -422,7 +399,6 @@ async def show_bot_config_category(
|
||||
callback: types.CallbackQuery,
|
||||
db_user: User,
|
||||
db: AsyncSession,
|
||||
state: FSMContext,
|
||||
):
|
||||
group_key, category_key, category_page, settings_page = _parse_category_payload(
|
||||
callback.data
|
||||
@@ -446,7 +422,6 @@ async def show_bot_config_category(
|
||||
reply_markup=keyboard,
|
||||
)
|
||||
await callback.answer()
|
||||
await state.clear()
|
||||
|
||||
|
||||
@admin_required
|
||||
@@ -455,7 +430,6 @@ async def show_bot_config_setting(
|
||||
callback: types.CallbackQuery,
|
||||
db_user: User,
|
||||
db: AsyncSession,
|
||||
state: FSMContext,
|
||||
):
|
||||
parts = callback.data.split(":", 4)
|
||||
group_key = parts[1] if len(parts) > 1 else CATEGORY_FALLBACK_KEY
|
||||
@@ -473,14 +447,6 @@ async def show_bot_config_setting(
|
||||
await callback.message.edit_text(text, reply_markup=keyboard)
|
||||
await callback.answer()
|
||||
|
||||
await _remember_setting_context(
|
||||
state,
|
||||
key,
|
||||
group_key,
|
||||
category_page,
|
||||
settings_page,
|
||||
)
|
||||
|
||||
|
||||
@admin_required
|
||||
@error_handler
|
||||
@@ -536,13 +502,13 @@ async def start_edit_setting(
|
||||
),
|
||||
)
|
||||
|
||||
await _remember_setting_context(
|
||||
state,
|
||||
key,
|
||||
group_key,
|
||||
category_page,
|
||||
settings_page,
|
||||
await state.update_data(
|
||||
setting_key=key,
|
||||
setting_group_key=group_key,
|
||||
setting_category_page=category_page,
|
||||
setting_settings_page=settings_page,
|
||||
)
|
||||
await state.set_state(BotConfigStates.waiting_for_value)
|
||||
await callback.answer()
|
||||
|
||||
|
||||
@@ -568,12 +534,7 @@ async def handle_edit_setting(
|
||||
try:
|
||||
value = bot_configuration_service.parse_user_value(key, message.text or "")
|
||||
except ValueError as error:
|
||||
error_text = str(error)
|
||||
if error_text == "Ввод отменен пользователем":
|
||||
await message.answer("❌ Изменение отменено")
|
||||
await state.clear()
|
||||
else:
|
||||
await message.answer(f"⚠️ {error_text}")
|
||||
await message.answer(f"⚠️ {error}")
|
||||
return
|
||||
|
||||
await bot_configuration_service.set_value(db, key, value)
|
||||
@@ -583,13 +544,7 @@ async def handle_edit_setting(
|
||||
keyboard = _build_setting_keyboard(key, group_key, category_page, settings_page)
|
||||
await message.answer("✅ Настройка обновлена")
|
||||
await message.answer(text, reply_markup=keyboard)
|
||||
await _remember_setting_context(
|
||||
state,
|
||||
key,
|
||||
group_key,
|
||||
category_page,
|
||||
settings_page,
|
||||
)
|
||||
await state.clear()
|
||||
|
||||
|
||||
@admin_required
|
||||
@@ -598,7 +553,6 @@ async def reset_setting(
|
||||
callback: types.CallbackQuery,
|
||||
db_user: User,
|
||||
db: AsyncSession,
|
||||
state: FSMContext,
|
||||
):
|
||||
parts = callback.data.split(":", 4)
|
||||
group_key = parts[1] if len(parts) > 1 else CATEGORY_FALLBACK_KEY
|
||||
@@ -617,13 +571,6 @@ async def reset_setting(
|
||||
text = _render_setting_text(key)
|
||||
keyboard = _build_setting_keyboard(key, group_key, category_page, settings_page)
|
||||
await callback.message.edit_text(text, reply_markup=keyboard)
|
||||
await _remember_setting_context(
|
||||
state,
|
||||
key,
|
||||
group_key,
|
||||
category_page,
|
||||
settings_page,
|
||||
)
|
||||
await callback.answer("Сброшено к значению по умолчанию")
|
||||
|
||||
|
||||
@@ -633,7 +580,6 @@ async def toggle_setting(
|
||||
callback: types.CallbackQuery,
|
||||
db_user: User,
|
||||
db: AsyncSession,
|
||||
state: FSMContext,
|
||||
):
|
||||
parts = callback.data.split(":", 4)
|
||||
group_key = parts[1] if len(parts) > 1 else CATEGORY_FALLBACK_KEY
|
||||
@@ -654,13 +600,6 @@ async def toggle_setting(
|
||||
text = _render_setting_text(key)
|
||||
keyboard = _build_setting_keyboard(key, group_key, category_page, settings_page)
|
||||
await callback.message.edit_text(text, reply_markup=keyboard)
|
||||
await _remember_setting_context(
|
||||
state,
|
||||
key,
|
||||
group_key,
|
||||
category_page,
|
||||
settings_page,
|
||||
)
|
||||
await callback.answer("Обновлено")
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user