from typing import Union from app import app from pyrogram import filters from pyrogram.types import InlineKeyboardMarkup, InlineKeyboardButton, User, Message from pyrogram.client import Client from modules.utils import locale from modules import custom_filters from classes.holo_user import HoloUser class DefaultRulesMarkup(list): def __init__(self, language_code: Union[str, HoloUser, User, None]): super().__init__([]) self.keyboard = InlineKeyboardMarkup( [ [ InlineKeyboardButton(locale("rules_home", "button", locale=language_code), callback_data="rules_home"), InlineKeyboardButton(locale("rules_additional", "button", locale=language_code), callback_data="rules_additional") ], [ InlineKeyboardButton("1", callback_data="rule_1"), InlineKeyboardButton("2", callback_data="rule_2"), InlineKeyboardButton("3", callback_data="rule_3") ], [ InlineKeyboardButton("4", callback_data="rule_4"), InlineKeyboardButton("5", callback_data="rule_5"), InlineKeyboardButton("6", callback_data="rule_6") ], [ InlineKeyboardButton("7", callback_data="rule_7"), InlineKeyboardButton("8", callback_data="rule_8"), InlineKeyboardButton("9", callback_data="rule_9") ] ] ) # Rules command ============================================================================================================= @app.on_message(custom_filters.enabled_general & ~filters.scheduled & filters.private & ~custom_filters.banned & filters.command(["rules"], prefixes=["/"])) async def cmd_rules(app: Client, msg: Message): await msg.reply_text(locale("rules_msg", locale=msg.from_user), disable_web_page_preview=True, reply_markup=DefaultRulesMarkup(msg.from_user).keyboard) # ==============================================================================================================================