37 lines
1.0 KiB
Python
37 lines
1.0 KiB
Python
from aiogram.filters.callback_data import CallbackData
|
|
from aiogram.types import InlineKeyboardMarkup
|
|
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
|
|
|
from keyboards.admin.panel_kb import build_admin_back_btn
|
|
|
|
|
|
class AdminSenderCallback(CallbackData, prefix="admin_sender"):
|
|
type: str
|
|
|
|
|
|
def build_sender_kb() -> InlineKeyboardMarkup:
|
|
builder = InlineKeyboardBuilder()
|
|
builder.button(
|
|
text="👥 Все пользователи",
|
|
callback_data=AdminSenderCallback(
|
|
type="all"
|
|
).pack()
|
|
)
|
|
builder.button(
|
|
text="✅ Пользователи с подпиской",
|
|
callback_data=AdminSenderCallback(
|
|
type="subscribed"
|
|
).pack()
|
|
)
|
|
builder.button(
|
|
text="❌ Пользователи без подписки",
|
|
callback_data=AdminSenderCallback(
|
|
type="unsubscribed"
|
|
).pack()
|
|
)
|
|
builder.row(
|
|
build_admin_back_btn()
|
|
)
|
|
builder.adjust(1)
|
|
return builder.as_markup()
|