forked from FOSS/ASF-Control-Bot
refactor(bot): modularize bot code
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
from aiogram import Router
|
||||
from aiogram.types import CallbackQuery
|
||||
|
||||
from bot.filters import AdminCallbackFilter
|
||||
from bot.state import console_users
|
||||
from bot.ui.formatters import get_asf_status_text
|
||||
from bot.ui.keyboards import console_keyboard, main_keyboard
|
||||
|
||||
router = Router()
|
||||
|
||||
|
||||
@router.callback_query(lambda c: c.data == "console", AdminCallbackFilter())
|
||||
async def console_enter(callback: CallbackQuery) -> None:
|
||||
await callback.answer()
|
||||
console_users.add(callback.from_user.id)
|
||||
await callback.message.edit_text( # type: ignore[union-attr]
|
||||
"💻 Консоль ASF\n\nОтправь команду (без !)",
|
||||
reply_markup=console_keyboard(),
|
||||
)
|
||||
|
||||
|
||||
@router.callback_query(lambda c: c.data == "console_exit", AdminCallbackFilter())
|
||||
async def console_exit(callback: CallbackQuery) -> None:
|
||||
await callback.answer()
|
||||
console_users.discard(callback.from_user.id)
|
||||
await callback.message.edit_text(get_asf_status_text(), reply_markup=main_keyboard()) # type: ignore[union-attr]
|
||||
Reference in New Issue
Block a user