from aiogram import F, Router from aiogram.types import CallbackQuery, InlineKeyboardButton from aiogram.utils.keyboard import InlineKeyboardBuilder from config import ( CRYPTO_BOT_ENABLE, DONATIONS_ENABLE, ROBOKASSA_ENABLE, STARS_ENABLE, YOOKASSA_ENABLE, YOOMONEY_ENABLE, ) from handlers.buttons import CRYPTOBOT, MAIN_MENU, ROBOKASSA, STARS, YOOKASSA, YOOMONEY from handlers.texts import PAYMENT_METHODS_MSG from .utils import edit_or_send_message router = Router() @router.callback_query(F.data == "pay") async def handle_pay(callback_query: CallbackQuery): builder = InlineKeyboardBuilder() if YOOKASSA_ENABLE: builder.row( InlineKeyboardButton( text=YOOKASSA, callback_data="pay_yookassa", ) ) if YOOMONEY_ENABLE: builder.row( InlineKeyboardButton( text=YOOMONEY, callback_data="pay_yoomoney", ) ) if CRYPTO_BOT_ENABLE: builder.row( InlineKeyboardButton( text=CRYPTOBOT, callback_data="pay_cryptobot", ) ) if STARS_ENABLE: builder.row( InlineKeyboardButton( text=STARS, callback_data="pay_stars", ) ) if ROBOKASSA_ENABLE: builder.row( InlineKeyboardButton( text=ROBOKASSA, callback_data="pay_robokassa", ) ) if DONATIONS_ENABLE: builder.row(InlineKeyboardButton(text="💰 Поддержать проект", callback_data="donate")) builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile")) await edit_or_send_message( target_message=callback_query.message, text=PAYMENT_METHODS_MSG, reply_markup=builder.as_markup(), media_path=None, disable_web_page_preview=False, )