This commit is contained in:
Zakhar Izmaylov
2024-11-20 09:43:16 +03:00
parent abf9462271
commit bafb176c3f
7 changed files with 18 additions and 6 deletions
+4
View File
@@ -5,6 +5,7 @@ from config import API_TOKEN, CRYPTO_BOT_ENABLE, FREEKASSA_ENABLE, ROBOKASSA_ENA
from middlewares.admin import AdminMiddleware
from middlewares.logging import LoggingMiddleware
from middlewares.user import UserMiddleware
from middlewares.database import DatabaseMiddleware
bot = Bot(token=API_TOKEN)
storage = MemoryStorage()
@@ -50,3 +51,6 @@ dp.callback_query.middleware(AdminMiddleware())
dp.message.middleware(UserMiddleware())
dp.callback_query.middleware(UserMiddleware())
dp.message.middleware(DatabaseMiddleware())
dp.callback_query.middleware(DatabaseMiddleware())
+14 -6
View File
@@ -408,7 +408,7 @@ async def process_callback_delete_key(callback_query: types.CallbackQuery):
@router.callback_query(F.data.startswith("renew_key|"))
async def process_callback_renew_key(callback_query: types.CallbackQuery):
tg_id = callback_query.from_user.id
client_id = callback_query.data.split("|")[1]
key_name = callback_query.data.split("|")[1]
try:
try:
@@ -421,11 +421,18 @@ async def process_callback_renew_key(callback_query: types.CallbackQuery):
conn = await asyncpg.connect(DATABASE_URL)
try:
record = await conn.fetchrow(
"SELECT email, expiry_time FROM keys WHERE client_id = $1", client_id
"""
SELECT client_id, expiry_time
FROM keys
WHERE email = $1
""",
key_name,
)
if record:
client_id = record["client_id"]
expiry_time = record["expiry_time"]
keyboard = types.InlineKeyboardMarkup(
inline_keyboard=[
[
@@ -461,6 +468,7 @@ async def process_callback_renew_key(callback_query: types.CallbackQuery):
)
balance = await get_balance(tg_id)
response_message = PLAN_SELECTION_MSG.format(
balance=balance,
expiry_date=datetime.utcfromtimestamp(expiry_time / 1000).strftime(
@@ -474,8 +482,8 @@ async def process_callback_renew_key(callback_query: types.CallbackQuery):
reply_markup=keyboard,
parse_mode="HTML",
)
else:
# Если ключ не найден
response_message = "<b>Ключ не найден.</b>"
await bot.send_message(
chat_id=tg_id, text=response_message, parse_mode="HTML"
@@ -497,17 +505,17 @@ async def process_callback_renew_key(callback_query: types.CallbackQuery):
@router.callback_query(F.data.startswith("confirm_delete|"))
async def process_callback_confirm_delete(callback_query: types.CallbackQuery):
tg_id = callback_query.from_user.id
client_id = callback_query.data.split("|")[1]
email = callback_query.data.split("|")[1]
try:
conn = await asyncpg.connect(DATABASE_URL)
try:
record = await conn.fetchrow(
"SELECT email FROM keys WHERE client_id = $1", client_id
"SELECT client_id FROM keys WHERE email = $1", email
)
if record:
email = record["email"]
client_id = record["client_id"]
response_message = "Ключ успешно удален."
back_button = types.InlineKeyboardButton(
text="Назад", callback_data="view_keys"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 142 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 142 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 142 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 142 KiB