from aiogram import types from aiogram.dispatcher.filters import CommandStart from load import dp, bot, messages from keyboard.default.main_menu import main_menu from utils.database.base import get_admins, get_operator from utils.database.user import Register @dp.message_handler(CommandStart()) async def start(message: types.Message): Register.register_user(message.from_user) is_bot_admin = message.from_user.id in get_admins() is_operator = message.from_user.id in get_operator() await bot.send_message( message.chat.id, messages.welcome.format(user=message.from_user.first_name), reply_markup=main_menu(admin=is_bot_admin, operator=is_operator) ) @dp.message_handler(lambda x: x.text == messages.back) async def back_to_menu(message: types.Message): is_bot_admin = message.from_user.id in get_admins() is_operator = message.from_user.id in get_operator() await bot.send_message( message.chat.id, "Главное меню", reply_markup=main_menu(admin=is_bot_admin, operator=is_operator) ) @dp.message_handler(lambda x: x.text == messages.cancel_message, state="*") async def cancel(message: types.Message): state = dp.current_state(chat=message.chat.id, user=message.from_user.id) await state.finish() await back_to_menu(message) @dp.message_handler(lambda x: x.text == messages.info) async def userinfo(message: types.Message): await bot.send_message( message.chat.id, "User_id: {user_id}".format(user_id=message.from_user.id), parse_mode="HTML" ) @dp.message_handler(commands=['test']) async def test(message: types.Message): Register.register_admin(message.from_user)