fix: server deletion when disabled / fix: multiple gifts receiving / add: tariff group info in subscription
This commit is contained in:
@@ -115,7 +115,7 @@ async def process_callback_delete_server(
|
||||
|
||||
server_name = callback_data.data
|
||||
|
||||
servers_dict = await get_servers(session)
|
||||
servers_dict = await get_servers(session, include_enabled=True)
|
||||
cluster_name = None
|
||||
for c_name, server_list in servers_dict.items():
|
||||
if any(s["server_name"] == server_name for s in server_list):
|
||||
|
||||
@@ -198,12 +198,14 @@ async def key_cluster_mode(
|
||||
)
|
||||
else:
|
||||
tariff_duration = tariff_info["name"]
|
||||
subgroup_title = tariff_info.get("subgroup_title", "") if tariff_info else ""
|
||||
|
||||
key_message_text = key_message_success(
|
||||
final_link,
|
||||
tariff_name=tariff_duration,
|
||||
traffic_limit=tariff_info.get("traffic_limit", 0) if tariff_info else 0,
|
||||
device_limit=tariff_info.get("device_limit", 0) if tariff_info else 0
|
||||
device_limit=tariff_info.get("device_limit", 0) if tariff_info else 0,
|
||||
subgroup_title=subgroup_title
|
||||
)
|
||||
|
||||
default_media_path = "img/pic.jpg"
|
||||
|
||||
@@ -570,12 +570,14 @@ async def finalize_key_creation(
|
||||
)
|
||||
else:
|
||||
tariff_duration = tariff_info["name"] if tariff_info else None
|
||||
subgroup_title = tariff_info.get("subgroup_title", "") if tariff_info else ""
|
||||
|
||||
key_message_text = key_message_success(
|
||||
link_to_show,
|
||||
tariff_name=tariff_duration,
|
||||
traffic_limit=tariff_info.get("traffic_limit", 0) if tariff_info else 0,
|
||||
device_limit=tariff_info.get("device_limit", 0) if tariff_info else 0
|
||||
device_limit=tariff_info.get("device_limit", 0) if tariff_info else 0,
|
||||
subgroup_title=subgroup_title
|
||||
)
|
||||
|
||||
await edit_or_send_message(
|
||||
|
||||
@@ -401,7 +401,8 @@ async def complete_key_renewal(
|
||||
tariff_name=tariff["name"],
|
||||
traffic_limit=tariff.get("traffic_limit") if tariff.get("traffic_limit") is not None else 0,
|
||||
device_limit=tariff.get("device_limit") if tariff.get("device_limit") is not None else 0,
|
||||
expiry_date=formatted_expiry_date
|
||||
expiry_date=formatted_expiry_date,
|
||||
subgroup_title=tariff.get("subgroup_title", "")
|
||||
)
|
||||
|
||||
if callback_query:
|
||||
|
||||
@@ -285,6 +285,7 @@ async def render_key_info(
|
||||
tariff_name = ""
|
||||
traffic_limit = 0
|
||||
device_limit = 0
|
||||
subgroup_title = ""
|
||||
tariff = None
|
||||
if record.get("tariff_id"):
|
||||
tariff = await get_tariff_by_id(session, record["tariff_id"])
|
||||
@@ -292,6 +293,7 @@ async def render_key_info(
|
||||
tariff_name = tariff["name"]
|
||||
traffic_limit = tariff.get("traffic_limit", 0)
|
||||
device_limit = tariff.get("device_limit", 0)
|
||||
subgroup_title = tariff.get("subgroup_title", "")
|
||||
|
||||
tariff_duration = tariff_name
|
||||
|
||||
@@ -304,7 +306,8 @@ async def render_key_info(
|
||||
hwid_count=hwid_count if device_limit is not None else 0,
|
||||
tariff_name=tariff_duration,
|
||||
traffic_limit=traffic_limit,
|
||||
device_limit=device_limit
|
||||
device_limit=device_limit,
|
||||
subgroup_title=subgroup_title
|
||||
)
|
||||
|
||||
if ENABLE_UPDATE_SUBSCRIPTION_BUTTON:
|
||||
|
||||
@@ -403,7 +403,8 @@ async def handle_expired_keys(
|
||||
get_renewal_message(
|
||||
tariff_name=tariff.get("name", ""),
|
||||
traffic_limit=tariff.get("traffic_limit") if tariff.get("traffic_limit") is not None else 0,
|
||||
device_limit=tariff.get("device_limit") if tariff.get("device_limit") is not None else 0
|
||||
device_limit=tariff.get("device_limit") if tariff.get("device_limit") is not None else 0,
|
||||
subgroup_title=tariff.get("subgroup_title", "")
|
||||
),
|
||||
)
|
||||
continue
|
||||
@@ -624,7 +625,8 @@ async def process_auto_renew_or_notify(
|
||||
tariff_name=selected_tariff["name"],
|
||||
traffic_limit=selected_tariff.get("traffic_limit") if selected_tariff.get("traffic_limit") is not None else 0,
|
||||
device_limit=selected_tariff.get("device_limit") if selected_tariff.get("device_limit") is not None else 0,
|
||||
expiry_date=formatted_expiry_date
|
||||
expiry_date=formatted_expiry_date,
|
||||
subgroup_title=selected_tariff.get("subgroup_title", "")
|
||||
)
|
||||
|
||||
keyboard = build_notification_expired_kb()
|
||||
|
||||
+18
-5
@@ -58,6 +58,8 @@ from .utils import edit_or_send_message
|
||||
|
||||
router = Router()
|
||||
|
||||
processing_gifts = set()
|
||||
|
||||
|
||||
@router.callback_query(F.data == "start")
|
||||
async def handle_start_callback_query(
|
||||
@@ -208,11 +210,22 @@ async def process_start_logic(
|
||||
|
||||
gift_id = parts[0]
|
||||
sender_id = parts[1]
|
||||
logger.info(f"[GIFT] Обнаружен подарок {gift_id} от {sender_id}")
|
||||
await handle_gift_link(
|
||||
gift_id, message, state, session, user_data=user_data
|
||||
)
|
||||
gift_detected = True
|
||||
|
||||
if gift_id in processing_gifts:
|
||||
await message.answer("⏳ Подарок уже обрабатывается, подождите...")
|
||||
return await process_callback_view_profile(message, state, admin, session)
|
||||
|
||||
processing_gifts.add(gift_id)
|
||||
|
||||
try:
|
||||
logger.info(f"[GIFT] Обнаружен подарок {gift_id} от {sender_id}")
|
||||
await handle_gift_link(
|
||||
gift_id, message, state, session, user_data=user_data
|
||||
)
|
||||
gift_detected = True
|
||||
finally:
|
||||
processing_gifts.discard(gift_id)
|
||||
|
||||
break
|
||||
|
||||
if "referral" in part:
|
||||
|
||||
Reference in New Issue
Block a user