Spaces:
Running
Running
Foydalanuvchi commited on
Commit Β·
67eed4e
1
Parent(s): 54844e5
Phase 15: Admin button added to main menu inline keyboard
Browse files
main.py
CHANGED
|
@@ -135,8 +135,8 @@ async def cleanup_old_files():
|
|
| 135 |
|
| 136 |
# --- UI Helpers ---
|
| 137 |
|
| 138 |
-
def get_main_menu_keyboard():
|
| 139 |
-
"""Asosiy menyu tugmalari."""
|
| 140 |
keyboard = [
|
| 141 |
[
|
| 142 |
InlineKeyboardButton("π Tarix", callback_data="nav|history"),
|
|
@@ -146,6 +146,11 @@ def get_main_menu_keyboard():
|
|
| 146 |
InlineKeyboardButton("βΉοΈ Yordam", callback_data="nav|help")
|
| 147 |
]
|
| 148 |
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 149 |
return InlineKeyboardMarkup(keyboard)
|
| 150 |
|
| 151 |
async def show_main_menu(update_or_query, context):
|
|
@@ -157,9 +162,11 @@ async def show_main_menu(update_or_query, context):
|
|
| 157 |
)
|
| 158 |
|
| 159 |
if isinstance(update_or_query, Update):
|
| 160 |
-
|
|
|
|
| 161 |
else:
|
| 162 |
-
|
|
|
|
| 163 |
|
| 164 |
# --- Handlers ---
|
| 165 |
|
|
@@ -449,14 +456,16 @@ async def handle_callback(update: Update, context: ContextTypes.DEFAULT_TYPE):
|
|
| 449 |
await query.edit_message_text("π **Xabar tarqatish rejimi**\n\nBarcha foydalanuvchilarga yubormoqchi bo'lgan matningizni kiriting:",
|
| 450 |
reply_markup=InlineKeyboardMarkup([[InlineKeyboardButton("β Bekor qilish", callback_data="admin_back")]]))
|
| 451 |
|
| 452 |
-
elif query.data == "admin_back":
|
| 453 |
BROADCAST_MODE[ADMIN_ID] = False
|
| 454 |
keyboard = [
|
| 455 |
[InlineKeyboardButton("π Statistika", callback_data="admin_stats"),
|
| 456 |
InlineKeyboardButton("π Bazani yuklab olish", callback_data="admin_db")],
|
| 457 |
-
[InlineKeyboardButton("π’ Xabar tarqatish", callback_data="admin_broadcast")]
|
|
|
|
| 458 |
]
|
| 459 |
-
await query.edit_message_text("π **Admin Panel**",
|
|
|
|
| 460 |
return
|
| 461 |
|
| 462 |
# [Avvalgi button_handler mantiqi davom etadi...]
|
|
|
|
| 135 |
|
| 136 |
# --- UI Helpers ---
|
| 137 |
|
| 138 |
+
def get_main_menu_keyboard(user_id=None):
|
| 139 |
+
"""Asosiy menyu tugmalari. Admin uchun qo'shimcha tugma qo'shiladi."""
|
| 140 |
keyboard = [
|
| 141 |
[
|
| 142 |
InlineKeyboardButton("π Tarix", callback_data="nav|history"),
|
|
|
|
| 146 |
InlineKeyboardButton("βΉοΈ Yordam", callback_data="nav|help")
|
| 147 |
]
|
| 148 |
]
|
| 149 |
+
|
| 150 |
+
# Faqat admin uchun tugma
|
| 151 |
+
if user_id == ADMIN_ID:
|
| 152 |
+
keyboard.append([InlineKeyboardButton("π Admin Panel", callback_data="admin_main")])
|
| 153 |
+
|
| 154 |
return InlineKeyboardMarkup(keyboard)
|
| 155 |
|
| 156 |
async def show_main_menu(update_or_query, context):
|
|
|
|
| 162 |
)
|
| 163 |
|
| 164 |
if isinstance(update_or_query, Update):
|
| 165 |
+
user_id = update_or_query.effective_user.id
|
| 166 |
+
await update_or_query.message.reply_text(text, reply_markup=get_main_menu_keyboard(user_id), parse_mode=constants.ParseMode.MARKDOWN)
|
| 167 |
else:
|
| 168 |
+
user_id = update_or_query.from_user.id
|
| 169 |
+
await update_or_query.edit_message_text(text, reply_markup=get_main_menu_keyboard(user_id), parse_mode=constants.ParseMode.MARKDOWN)
|
| 170 |
|
| 171 |
# --- Handlers ---
|
| 172 |
|
|
|
|
| 456 |
await query.edit_message_text("π **Xabar tarqatish rejimi**\n\nBarcha foydalanuvchilarga yubormoqchi bo'lgan matningizni kiriting:",
|
| 457 |
reply_markup=InlineKeyboardMarkup([[InlineKeyboardButton("β Bekor qilish", callback_data="admin_back")]]))
|
| 458 |
|
| 459 |
+
elif query.data == "admin_back" or query.data == "admin_main":
|
| 460 |
BROADCAST_MODE[ADMIN_ID] = False
|
| 461 |
keyboard = [
|
| 462 |
[InlineKeyboardButton("π Statistika", callback_data="admin_stats"),
|
| 463 |
InlineKeyboardButton("π Bazani yuklab olish", callback_data="admin_db")],
|
| 464 |
+
[InlineKeyboardButton("π’ Xabar tarqatish", callback_data="admin_broadcast")],
|
| 465 |
+
[InlineKeyboardButton("π Asosiy Menyu", callback_data="nav|main")]
|
| 466 |
]
|
| 467 |
+
await query.edit_message_text("π **Admin Panel**\n\nBo'limni tanlang:",
|
| 468 |
+
reply_markup=InlineKeyboardMarkup(keyboard), parse_mode=constants.ParseMode.MARKDOWN)
|
| 469 |
return
|
| 470 |
|
| 471 |
# [Avvalgi button_handler mantiqi davom etadi...]
|