Fix packages imports
This commit is contained in:
@@ -5,7 +5,7 @@ from aiogram.types import BufferedInputFile, CallbackQuery
|
||||
|
||||
from database import delete_user_data
|
||||
from filters.admin import IsAdminFilter
|
||||
from keyboard import build_bans_kb
|
||||
from .keyboard import build_bans_kb
|
||||
from ..panel.keyboard import AdminPanelCallback, build_admin_back_kb
|
||||
|
||||
router = Router()
|
||||
|
||||
@@ -17,7 +17,8 @@ from logger import logger
|
||||
from .keyboard import (
|
||||
build_clusters_editor_kb,
|
||||
build_manage_cluster_kb,
|
||||
AdminClusterCallback, build_sync_cluster_kb,
|
||||
AdminClusterCallback,
|
||||
build_sync_cluster_kb,
|
||||
)
|
||||
from ..panel.keyboard import AdminPanelCallback, build_admin_back_kb
|
||||
|
||||
@@ -246,7 +247,7 @@ async def handle_inbound_id_input(message: Message, state: FSMContext):
|
||||
|
||||
@router.callback_query(AdminClusterCallback.filter(F.action == "manage"), IsAdminFilter())
|
||||
async def handle_clusters_manage(
|
||||
callback_query: types.CallbackQuery, callback_data: AdminClusterCallback, session: Any
|
||||
callback_query: types.CallbackQuery, callback_data: AdminClusterCallback, session: Any
|
||||
):
|
||||
cluster_name = callback_data.data
|
||||
|
||||
@@ -261,7 +262,7 @@ async def handle_clusters_manage(
|
||||
|
||||
@router.callback_query(AdminClusterCallback.filter(F.action == "availability"), IsAdminFilter())
|
||||
async def handle_cluster_availability(
|
||||
callback_query: types.CallbackQuery, callback_data: AdminClusterCallback, session: Any
|
||||
callback_query: types.CallbackQuery, callback_data: AdminClusterCallback, session: Any
|
||||
):
|
||||
cluster_name = callback_data.data
|
||||
|
||||
@@ -300,7 +301,7 @@ async def handle_cluster_availability(
|
||||
|
||||
@router.callback_query(AdminClusterCallback.filter(F.action == "backup"), IsAdminFilter())
|
||||
async def handle_clusters_backup(
|
||||
callback_query: types.CallbackQuery, callback_data: AdminClusterCallback, session: Any
|
||||
callback_query: types.CallbackQuery, callback_data: AdminClusterCallback, session: Any
|
||||
):
|
||||
cluster_name = callback_data.data
|
||||
|
||||
@@ -360,10 +361,7 @@ async def handle_sync_server(callback_query: types.CallbackQuery, callback_data:
|
||||
)
|
||||
return
|
||||
|
||||
text = (
|
||||
f"<b>🔄 Синхронизация сервера {server_name}</b>\n\n"
|
||||
f"🔑 Количество ключей: <b>{len(keys_to_sync)}</b>"
|
||||
)
|
||||
text = f"<b>🔄 Синхронизация сервера {server_name}</b>\n\n🔑 Количество ключей: <b>{len(keys_to_sync)}</b>"
|
||||
|
||||
await callback_query.message.answer(
|
||||
text=text,
|
||||
@@ -382,7 +380,7 @@ async def handle_sync_server(callback_query: types.CallbackQuery, callback_data:
|
||||
key["client_id"],
|
||||
key["email"],
|
||||
key["expiry_time"],
|
||||
semaphore
|
||||
semaphore,
|
||||
)
|
||||
await asyncio.sleep(0.6)
|
||||
except Exception as e:
|
||||
@@ -418,10 +416,7 @@ async def handle_sync_cluster(callback_query: types.CallbackQuery, callback_data
|
||||
)
|
||||
return
|
||||
|
||||
text = (
|
||||
f"<b>🔄 Синхронизация кластера {cluster_name}</b>\n\n"
|
||||
f"🔑 Количество ключей: <b>{len(keys_to_sync)}</b>"
|
||||
)
|
||||
text = f"<b>🔄 Синхронизация кластера {cluster_name}</b>\n\n🔑 Количество ключей: <b>{len(keys_to_sync)}</b>"
|
||||
|
||||
await callback_query.message.answer(
|
||||
text=text,
|
||||
|
||||
@@ -21,13 +21,11 @@ def build_clusters_editor_kb(servers: dict) -> InlineKeyboardMarkup:
|
||||
text=f"⚙️ {name}",
|
||||
callback_data=AdminClusterCallback(action="manage", data=name).pack(),
|
||||
)
|
||||
for name in cluster_names[i: i + 2]
|
||||
for name in cluster_names[i : i + 2]
|
||||
])
|
||||
|
||||
builder.row(
|
||||
InlineKeyboardButton(
|
||||
text="➕ Добавить кластер", callback_data=AdminClusterCallback(action="add").pack()
|
||||
)
|
||||
InlineKeyboardButton(text="➕ Добавить кластер", callback_data=AdminClusterCallback(action="add").pack())
|
||||
)
|
||||
|
||||
builder.row(build_admin_back_btn())
|
||||
|
||||
@@ -8,7 +8,7 @@ from aiogram.types import CallbackQuery, Message
|
||||
from config import USERNAME_BOT
|
||||
from database import create_coupon, delete_coupon, get_all_coupons
|
||||
from filters.admin import IsAdminFilter
|
||||
from keyboard import AdminCouponDeleteCallback, build_coupons_kb, build_coupons_list_kb
|
||||
from .keyboard import AdminCouponDeleteCallback, build_coupons_kb, build_coupons_list_kb
|
||||
from logger import logger
|
||||
from ..panel.keyboard import AdminPanelCallback, build_admin_back_kb
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ from aiogram.types import CallbackQuery, Message
|
||||
from asyncpg import Connection
|
||||
|
||||
from filters.admin import IsAdminFilter
|
||||
from keyboard import AdminPanelCallback, build_management_kb
|
||||
from .keyboard import AdminPanelCallback, build_management_kb
|
||||
from logger import logger
|
||||
from ..panel.keyboard import build_admin_back_kb
|
||||
|
||||
@@ -25,7 +25,7 @@ async def handle_management(callback_query: CallbackQuery):
|
||||
|
||||
|
||||
@router.callback_query(AdminPanelCallback.filter(F.action == "change_domain"), IsAdminFilter())
|
||||
async def request_new_domain(callback_query: AdminPanelCallback, state: FSMContext):
|
||||
async def request_new_domain(callback_query: CallbackQuery, state: FSMContext):
|
||||
"""Запрашивает у администратора новый домен."""
|
||||
await state.set_state(AdminManagementStates.waiting_for_new_domain)
|
||||
await callback_query.message.edit_text(
|
||||
|
||||
@@ -5,7 +5,7 @@ from aiogram.types import CallbackQuery, Message
|
||||
|
||||
from bot import version
|
||||
from filters.admin import IsAdminFilter
|
||||
from keyboard import AdminPanelCallback, build_panel_kb
|
||||
from .keyboard import AdminPanelCallback, build_panel_kb
|
||||
|
||||
router = Router()
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ from aiogram import F, Router
|
||||
from aiogram.types import CallbackQuery
|
||||
|
||||
from filters.admin import IsAdminFilter
|
||||
from handlers.admin.panel.keyboard import AdminPanelCallback, build_admin_back_kb, build_restart_kb
|
||||
from ..panel.keyboard import AdminPanelCallback, build_admin_back_kb, build_restart_kb
|
||||
|
||||
router = Router()
|
||||
|
||||
|
||||
@@ -16,9 +16,7 @@ def build_sender_kb() -> InlineKeyboardMarkup:
|
||||
builder.row(InlineKeyboardButton(text="👥 Все пользователи", callback_data=AdminSenderCallback(type="all").pack()))
|
||||
builder.row(
|
||||
InlineKeyboardButton(text="✅ С подпиской", callback_data=AdminSenderCallback(type="subscribed").pack()),
|
||||
InlineKeyboardButton(
|
||||
text="❌ Без подписки", callback_data=AdminSenderCallback(type="unsubscribed").pack()
|
||||
),
|
||||
InlineKeyboardButton(text="❌ Без подписки", callback_data=AdminSenderCallback(type="unsubscribed").pack()),
|
||||
)
|
||||
builder.row(
|
||||
InlineKeyboardButton(
|
||||
|
||||
@@ -2,8 +2,6 @@ from aiogram.filters.callback_data import CallbackData
|
||||
from aiogram.types import InlineKeyboardMarkup
|
||||
from aiogram.utils.keyboard import InlineKeyboardBuilder
|
||||
|
||||
from ..clusters.keyboard import AdminClusterCallback
|
||||
|
||||
|
||||
class AdminServerCallback(CallbackData, prefix="admin_server"):
|
||||
action: str
|
||||
@@ -11,6 +9,8 @@ class AdminServerCallback(CallbackData, prefix="admin_server"):
|
||||
|
||||
|
||||
def build_manage_server_kb(server_name: str, cluster_name: str) -> InlineKeyboardMarkup:
|
||||
from ..clusters.keyboard import AdminClusterCallback
|
||||
|
||||
builder = InlineKeyboardBuilder()
|
||||
builder.button(text="🗑️ Удалить", callback_data=AdminServerCallback(action="delete", data=server_name).pack())
|
||||
builder.button(text="🔙 Назад", callback_data=AdminClusterCallback(action="manage", data=cluster_name).pack())
|
||||
|
||||
@@ -5,7 +5,7 @@ from aiogram.types import CallbackQuery
|
||||
|
||||
from database import delete_server, get_servers
|
||||
from filters.admin import IsAdminFilter
|
||||
from keyboard import (
|
||||
from .keyboard import (
|
||||
AdminServerCallback,
|
||||
build_delete_server_kb,
|
||||
build_manage_server_kb,
|
||||
|
||||
@@ -7,7 +7,7 @@ from aiogram.exceptions import TelegramBadRequest
|
||||
from aiogram.types import CallbackQuery
|
||||
|
||||
from filters.admin import IsAdminFilter
|
||||
from keyboard import build_stats_kb
|
||||
from .keyboard import build_stats_kb
|
||||
from logger import logger
|
||||
from utils.csv_export import export_payments_csv, export_users_csv
|
||||
from ..panel.keyboard import AdminPanelCallback, build_admin_back_kb
|
||||
|
||||
@@ -27,7 +27,7 @@ from handlers.utils import sanitize_key_name
|
||||
from logger import logger
|
||||
from utils.csv_export import export_referrals_csv
|
||||
from ..panel.keyboard import AdminPanelCallback, build_admin_back_kb, build_admin_back_btn
|
||||
from ..users.keyboard import (
|
||||
from .keyboard import (
|
||||
AdminUserEditorCallback,
|
||||
AdminUserKeyEditorCallback,
|
||||
build_editor_kb,
|
||||
|
||||
Reference in New Issue
Block a user