Модуль установки настроек бота

This commit is contained in:
2026-02-25 17:48:50 +07:00
parent 82d40ad6e8
commit 8b5d567536

View File

@@ -6,7 +6,7 @@ from aiogram.utils.i18n import gettext as _
from aiogram.utils.keyboard import InlineKeyboardBuilder
from bot.core.bots import BotInfo
from bot.filters import IsOwner
from bot.filters import IsSuperAdmin
from bot.templates import msg
from bot.utils import status_clear
from configs import COMMANDS
@@ -20,12 +20,12 @@ router: Router = Router(name=f"{CMD}_cmd_router")
def settings_keyboard() -> InlineKeyboardBuilder:
"""Клавиатура настроек"""
ikb: InlineKeyboardBuilder = InlineKeyboardBuilder()
ikb.row(InlineKeyboardButton(text="🔙 Вернуться", callback_data="settings"))
ikb.row(InlineKeyboardButton(text="🔙 Вернуться", callback_data=CMD))
return ikb
@router.callback_query(F.data.lower() == CMD, IsOwner())
@router.message(Command(*COMMANDS[CMD], prefix=BotInfo.prefix, ignore_case=True), IsOwner())
@router.callback_query(F.data.lower() == CMD, IsSuperAdmin())
@router.message(Command(*COMMANDS[CMD], prefix=BotInfo.prefix, ignore_case=True), IsSuperAdmin())
async def settings_cmd(message: Message | CallbackQuery, state: FSMContext) -> None:
"""Обработчик команды /settings"""
await status_clear(update=message, state=state)
@@ -35,7 +35,9 @@ async def settings_cmd(message: Message | CallbackQuery, state: FSMContext) -> N
ikb.row(InlineKeyboardButton(text="Имя бота⚜️", callback_data='set_name'))
ikb.row(InlineKeyboardButton(text="Описание бота📝", callback_data='set_description'))
ikb.row(InlineKeyboardButton(text="Виджет🧩", callback_data='set_widget'))
ikb.row(InlineKeyboardButton(text="Назад◀️", callback_data='menu'))
ikb.row(InlineKeyboardButton(text="Аватарка🖼", callback_data='set_avatar'))
ikb.row(InlineKeyboardButton(text="Назад◀️", callback_data='settings'))
ikb.adjust(2)
# Формируем приветственное сообщение
text: str = _("""
@@ -46,3 +48,19 @@ async def settings_cmd(message: Message | CallbackQuery, state: FSMContext) -> N
# Отправляем сообщение
await msg(update=message, text=text, markup=ikb, state=state)
@router.callback_query(F.data.lower() == "set_avatar", IsSuperAdmin())
async def avatar_zaglushka(
callback: CallbackQuery,
state: FSMContext
) -> None:
"""
Аватары нельзя менять в aiogram хнык
"""
await status_clear(update=callback, state=state)
await callback.answer(
text="Ну бля, я не виноват что тг говно и не даст поменять",
show_alert=True
)