чистка кода
- Почитсил коментарии.
This commit is contained in:
@@ -148,7 +148,6 @@ async def handle_subscription(request, old_subscription=False):
|
|||||||
combined_subscriptions = await combine_unique_lines(urls, tg_id or email, query_string)
|
combined_subscriptions = await combine_unique_lines(urls, tg_id or email, query_string)
|
||||||
random.shuffle(combined_subscriptions)
|
random.shuffle(combined_subscriptions)
|
||||||
|
|
||||||
# Извлечение времени (time_left) из метаданных подписки.
|
|
||||||
time_left = None
|
time_left = None
|
||||||
for line in combined_subscriptions:
|
for line in combined_subscriptions:
|
||||||
if "#" in line:
|
if "#" in line:
|
||||||
@@ -169,7 +168,6 @@ async def handle_subscription(request, old_subscription=False):
|
|||||||
if not time_left:
|
if not time_left:
|
||||||
time_left = "N/A"
|
time_left = "N/A"
|
||||||
|
|
||||||
# Логика зависит от значения SUPERNODE.
|
|
||||||
cleaned_subscriptions = []
|
cleaned_subscriptions = []
|
||||||
for line in combined_subscriptions:
|
for line in combined_subscriptions:
|
||||||
if "#" in line:
|
if "#" in line:
|
||||||
@@ -179,17 +177,13 @@ async def handle_subscription(request, old_subscription=False):
|
|||||||
continue
|
continue
|
||||||
parts = meta.split("-")
|
parts = meta.split("-")
|
||||||
if SUPERNODE:
|
if SUPERNODE:
|
||||||
# Если SUPERNODE=True:
|
|
||||||
# Если трафик включен (4 поля или 3 поля): берем страну и трафик (если 4 поля – берем третью, если 3 – оставляем только страну)
|
|
||||||
if parts:
|
if parts:
|
||||||
country = parts[0]
|
country = parts[0]
|
||||||
# Убираем префикс до символа "_"
|
|
||||||
if "_" in country:
|
if "_" in country:
|
||||||
country = country.split("_", 1)[1]
|
country = country.split("_", 1)[1]
|
||||||
if len(parts) == 4:
|
if len(parts) == 4:
|
||||||
meta_clean = country + "-" + parts[2]
|
meta_clean = country + "-" + parts[2]
|
||||||
elif len(parts) == 3:
|
elif len(parts) == 3:
|
||||||
# Если трафик отключен, оставляем только страну
|
|
||||||
meta_clean = country
|
meta_clean = country
|
||||||
else:
|
else:
|
||||||
meta_clean = country
|
meta_clean = country
|
||||||
@@ -217,18 +211,14 @@ async def handle_subscription(request, old_subscription=False):
|
|||||||
|
|
||||||
final_subscriptions = cleaned_subscriptions
|
final_subscriptions = cleaned_subscriptions
|
||||||
base64_encoded = base64.b64encode("\n".join(final_subscriptions).encode("utf-8")).decode("utf-8")
|
base64_encoded = base64.b64encode("\n".join(final_subscriptions).encode("utf-8")).decode("utf-8")
|
||||||
|
|
||||||
# Информации о подписке, которая используется в заголовке вместе с PROJECT_NAME
|
|
||||||
subscription_info = f"📄 Подписка: {email} - {time_left}"
|
subscription_info = f"📄 Подписка: {email} - {time_left}"
|
||||||
|
|
||||||
user_agent = request.headers.get("User-Agent", "")
|
user_agent = request.headers.get("User-Agent", "")
|
||||||
if "Happ" in user_agent:
|
if "Happ" in user_agent:
|
||||||
# Для Happ передаётся только PROJECT_NAME
|
|
||||||
encoded_project_name = f"{PROJECT_NAME}"
|
encoded_project_name = f"{PROJECT_NAME}"
|
||||||
support_username = SUPPORT_CHAT_URL.split("https://t.me/")[-1]
|
support_username = SUPPORT_CHAT_URL.split("https://t.me/")[-1]
|
||||||
announce_str = f"↖️Бот | {subscription_info} | Поддержка↗️"
|
announce_str = f"↖️Бот | {subscription_info} | Поддержка↗️"
|
||||||
|
|
||||||
# Вычисляем expire таймштамп + текущее время
|
|
||||||
expire_timestamp = 0
|
expire_timestamp = 0
|
||||||
m_expire = re.search(r'(?:(\d+)D,)?(\d+)H', time_left)
|
m_expire = re.search(r'(?:(\d+)D,)?(\d+)H', time_left)
|
||||||
if m_expire:
|
if m_expire:
|
||||||
@@ -236,9 +226,7 @@ async def handle_subscription(request, old_subscription=False):
|
|||||||
h = int(m_expire.group(2))
|
h = int(m_expire.group(2))
|
||||||
expire_timestamp = int(time.time() + d * 86400 + h * 3600)
|
expire_timestamp = int(time.time() + d * 86400 + h * 3600)
|
||||||
|
|
||||||
# Извлекаем общий трафик (total)
|
|
||||||
if TOTAL_GB != 0:
|
if TOTAL_GB != 0:
|
||||||
# Извлекаем остаток трафика с каждой страны + расчет общего трафика.
|
|
||||||
country_remaining = {}
|
country_remaining = {}
|
||||||
for line in combined_subscriptions:
|
for line in combined_subscriptions:
|
||||||
if "#" not in line:
|
if "#" not in line:
|
||||||
@@ -281,8 +269,7 @@ async def handle_subscription(request, old_subscription=False):
|
|||||||
else:
|
else:
|
||||||
consumed_traffic_bytes = 0
|
consumed_traffic_bytes = 0
|
||||||
total_traffic_bytes = 0
|
total_traffic_bytes = 0
|
||||||
|
|
||||||
# Заголовок subscription-userinfo для Happ
|
|
||||||
subscription_userinfo = f"upload=0; download={consumed_traffic_bytes}; total={total_traffic_bytes}; expire={expire_timestamp}"
|
subscription_userinfo = f"upload=0; download={consumed_traffic_bytes}; total={total_traffic_bytes}; expire={expire_timestamp}"
|
||||||
|
|
||||||
headers = {
|
headers = {
|
||||||
|
|||||||
Reference in New Issue
Block a user