From bff7d3ede0f6fff1812ed159b5496cb09b623d32 Mon Sep 17 00:00:00 2001 From: Vladless Date: Sat, 5 Apr 2025 02:16:24 +0300 Subject: [PATCH] on/off manual_instructions/fix send_photo --- handlers/buttons.py | 1 + handlers/keys/key_management.py | 4 ++-- handlers/keys/keys.py | 10 +++++++--- handlers/profile.py | 6 +++--- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/handlers/buttons.py b/handlers/buttons.py index 7bd83484..2d85ceda 100644 --- a/handlers/buttons.py +++ b/handlers/buttons.py @@ -19,6 +19,7 @@ TARRIFS = "💡 Тарифы" INSTRUCTIONS = "📘 Инструкции" INVITE = "👥 Пригласить друга" TOP_FIVE = "🏆 Топ-5" +TRIAL_SUB = "🎁 Пробная подписка" # Меню Оплат и баланса diff --git a/handlers/keys/key_management.py b/handlers/keys/key_management.py index 5d08cf57..5baf3a9b 100644 --- a/handlers/keys/key_management.py +++ b/handlers/keys/key_management.py @@ -8,7 +8,7 @@ import pytz from aiogram import F, Router from aiogram.fsm.context import FSMContext -from aiogram.types import CallbackQuery, InlineKeyboardButton, Message, InputFile +from aiogram.types import CallbackQuery, InlineKeyboardButton, Message, FSInputFile from aiogram.utils.keyboard import InlineKeyboardBuilder from py3xui import AsyncApi @@ -320,7 +320,7 @@ async def create_key( media_path=default_media_path, ) else: - photo = InputFile(default_media_path) + photo = FSInputFile(default_media_path) await bot.send_photo( chat_id=tg_id, photo=photo, diff --git a/handlers/keys/keys.py b/handlers/keys/keys.py index 8ee7fbd1..06cdceec 100644 --- a/handlers/keys/keys.py +++ b/handlers/keys/keys.py @@ -37,6 +37,7 @@ from config import ( TOTAL_GB, USE_COUNTRY_SELECTION, USE_NEW_PAYMENT_FLOW, + INSTRUCTIONS_BUTTON ) from database import ( check_server_name_by_cluster, @@ -659,7 +660,8 @@ async def process_callback_connect_phone(callback_query: CallbackQuery): InlineKeyboardButton(text=IMPORT_IOS, url=f"{CONNECT_IOS}{key_link}"), InlineKeyboardButton(text=IMPORT_ANDROID, url=f"{CONNECT_ANDROID}{key_link}"), ) - builder.row(InlineKeyboardButton(text=MANUAL_INSTRUCTIONS, callback_data="instructions")) + if INSTRUCTIONS_BUTTON: + builder.row(InlineKeyboardButton(text=MANUAL_INSTRUCTIONS, callback_data="instructions")) builder.row(InlineKeyboardButton(text=BACK, callback_data=f"view_key|{email}")) await edit_or_send_message( @@ -694,7 +696,8 @@ async def process_callback_connect_ios(callback_query: CallbackQuery): builder = InlineKeyboardBuilder() builder.row(InlineKeyboardButton(text=DOWNLOAD_IOS_BUTTON, url=DOWNLOAD_IOS)) builder.row(InlineKeyboardButton(text=IMPORT_IOS, url=f"{CONNECT_IOS}{key_link}")) - builder.row(InlineKeyboardButton(text=MANUAL_INSTRUCTIONS, callback_data="instructions")) + if INSTRUCTIONS_BUTTON: + builder.row(InlineKeyboardButton(text=MANUAL_INSTRUCTIONS, callback_data="instructions")) builder.row(InlineKeyboardButton(text=BACK, callback_data=f"view_key|{email}")) builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile")) @@ -733,7 +736,8 @@ async def process_callback_connect_android(callback_query: CallbackQuery): builder = InlineKeyboardBuilder() builder.row(InlineKeyboardButton(text=DOWNLOAD_ANDROID_BUTTON, url=DOWNLOAD_ANDROID)) builder.row(InlineKeyboardButton(text=IMPORT_ANDROID, url=f"{CONNECT_ANDROID}{key_link}")) - builder.row(InlineKeyboardButton(text=MANUAL_INSTRUCTIONS, callback_data="instructions")) + if INSTRUCTIONS_BUTTON: + builder.row(InlineKeyboardButton(text=MANUAL_INSTRUCTIONS, callback_data="instructions")) builder.row(InlineKeyboardButton(text=BACK, callback_data=f"view_key|{email}")) builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile")) diff --git a/handlers/profile.py b/handlers/profile.py index 9b5222bd..25800a84 100644 --- a/handlers/profile.py +++ b/handlers/profile.py @@ -5,7 +5,7 @@ import os import asyncpg import qrcode -from typing import Any, Optional +from typing import Any from aiogram import F, Router from aiogram.enums import ParseMode @@ -17,7 +17,6 @@ from aiogram.types import ( InlineQueryResultArticle, InputTextMessageContent, Message, - User ) from aiogram.utils.keyboard import InlineKeyboardBuilder @@ -52,6 +51,7 @@ from handlers.buttons import ( PAYMENT, QR, TOP_FIVE, + TRIAL_SUB ) from handlers.texts import BALANCE_HISTORY_HEADER, BALANCE_MANAGEMENT_TEXT, INVITE_TEXT_NON_INLINE, TOP_REFERRALS_TEXT from logger import logger @@ -115,7 +115,7 @@ async def process_callback_view_profile( if key_count > 0: builder.row(InlineKeyboardButton(text=MY_SUBS, callback_data="view_keys")) elif trial_status == 0: - builder.row(InlineKeyboardButton(text="🎁 Пробная подписка", callback_data="create_key")) + builder.row(InlineKeyboardButton(text=TRIAL_SUB, callback_data="create_key")) else: builder.row(InlineKeyboardButton(text=ADD_SUB, callback_data="create_key")) builder.row(InlineKeyboardButton(text=BALANCE, callback_data="balance"))