mirror of
https://github.com/BEDOLAGA-DEV/remnawave-bedolaga-telegram-bot.git
synced 2026-01-20 03:40:26 +00:00
116 lines
3.3 KiB
Python
116 lines
3.3 KiB
Python
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton, ReplyKeyboardRemove
|
|
from typing import List
|
|
|
|
from app.localization.texts import get_texts
|
|
|
|
|
|
def get_main_reply_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
texts = get_texts(language)
|
|
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[
|
|
KeyboardButton(text=texts.MENU_BALANCE),
|
|
KeyboardButton(text=texts.MENU_SUBSCRIPTION)
|
|
],
|
|
[
|
|
KeyboardButton(text=texts.MENU_PROMOCODE),
|
|
KeyboardButton(text=texts.MENU_REFERRALS)
|
|
],
|
|
[
|
|
KeyboardButton(text=texts.MENU_SUPPORT),
|
|
KeyboardButton(text=texts.MENU_RULES)
|
|
]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=False
|
|
)
|
|
|
|
|
|
def get_admin_reply_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
texts = get_texts(language)
|
|
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[
|
|
KeyboardButton(text="👥 Пользователи"),
|
|
KeyboardButton(text="📱 Подписки")
|
|
],
|
|
[
|
|
KeyboardButton(text="🎫 Промокоды"),
|
|
KeyboardButton(text="📨 Рассылки")
|
|
],
|
|
[
|
|
KeyboardButton(text="📊 Статистика"),
|
|
KeyboardButton(text="🔧 Мониторинг")
|
|
],
|
|
[
|
|
KeyboardButton(text="🏠 Главное меню")
|
|
]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=False
|
|
)
|
|
|
|
|
|
def get_cancel_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
texts = get_texts(language)
|
|
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[KeyboardButton(text=texts.CANCEL)]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=True
|
|
)
|
|
|
|
|
|
def get_confirmation_reply_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
texts = get_texts(language)
|
|
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[
|
|
KeyboardButton(text=texts.YES),
|
|
KeyboardButton(text=texts.NO)
|
|
]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=True
|
|
)
|
|
|
|
|
|
def get_skip_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[KeyboardButton(text="⏭️ Пропустить")]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=True
|
|
)
|
|
|
|
|
|
def remove_keyboard() -> ReplyKeyboardRemove:
|
|
return ReplyKeyboardRemove()
|
|
|
|
|
|
def get_contact_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[KeyboardButton(text="📱 Отправить контакт", request_contact=True)],
|
|
[KeyboardButton(text="❌ Отмена")]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=True
|
|
)
|
|
|
|
|
|
def get_location_keyboard(language: str = "ru") -> ReplyKeyboardMarkup:
|
|
return ReplyKeyboardMarkup(
|
|
keyboard=[
|
|
[KeyboardButton(text="📍 Отправить геолокацию", request_location=True)],
|
|
[KeyboardButton(text="❌ Отмена")]
|
|
],
|
|
resize_keyboard=True,
|
|
one_time_keyboard=True
|
|
) |