feat: add admin HWID device limit overrides

This commit is contained in:
3252a8
2026-06-03 14:47:47 +03:00
parent 7b8feee99a
commit a06884d816
20 changed files with 1782 additions and 14 deletions
+33
View File
@@ -284,6 +284,8 @@
"admin_user_premium_override_label": "🌟 Premium override:",
"admin_user_premium_override_unlimited": "Unlimited",
"admin_user_premium_override_bonus_value": "+{gb} GB",
"admin_user_hwid_limit_button": "📱 HWID limit",
"admin_user_hwid_limit_label": "📱 HWID devices:",
"admin_premium_override_title": "🌟 Premium override",
"admin_premium_override_hint": "Grant free extra premium traffic or unlimited premium access for this user.",
"admin_premium_override_current": "Current: {current}",
@@ -300,6 +302,23 @@
"admin_premium_override_bonus_set": "✅ Premium override: +{gb} GB for user {user_id}",
"admin_premium_override_saved": "✅ Premium override saved",
"admin_premium_override_save_error": "❌ Failed to save premium override",
"admin_hwid_limit_title": "📱 HWID device limit",
"admin_hwid_limit_hint": "Set a manual base device limit for this user. 0 means unlimited; reset returns to the tariff or default limit.",
"admin_hwid_limit_current": "Current: {current}",
"admin_hwid_limit_state_default": "tariff / default",
"admin_hwid_limit_state_unlimited": "unlimited",
"admin_hwid_limit_state_count": "{count} devices",
"admin_hwid_limit_state_with_extra": "{total} devices ({base} + {extra})",
"admin_hwid_limit_btn_set_number": "🔢 Set number",
"admin_hwid_limit_btn_unlimited": "♾ Make unlimited",
"admin_hwid_limit_btn_reset": "↩️ Use tariff/default",
"admin_hwid_limit_prompt": "Enter the HWID device limit for user {user_id}. 0 means unlimited:",
"admin_hwid_limit_invalid": "❌ Enter an integer device count from 0 to 1,000,000.",
"admin_hwid_limit_no_subscription": "User has no active subscription",
"admin_hwid_limit_state_missing": "⚠️ Target user missing in state. Open the user card again.",
"admin_hwid_limit_set": "✅ HWID device limit for user {user_id}: {current}",
"admin_hwid_limit_saved": "✅ HWID device limit saved",
"admin_hwid_limit_save_error": "❌ Failed to save HWID device limit",
"admin_user_traffic_grant_button": "🎁 Grant GB",
"admin_traffic_grant_title": "🎁 Grant traffic",
"admin_traffic_grant_hint": "Credit GB to the user's balance — same effect as a top-up purchase, but without payment. The panel limit and squads refresh immediately.",
@@ -1313,7 +1332,21 @@
"admin_user_label_main_traffic": "Main Traffic",
"admin_user_traffic_left": "Left: {left}",
"admin_user_label_premium_squads": "Premium Squads",
"user_label_hwid_devices": "HWID devices",
"user_override_unlimited_short": "Unlimited",
"user_hwid_limit_card_title": "HWID devices",
"user_hwid_limit_card_hint": "Manual device limit for this user. Empty value returns to the tariff or default limit.",
"user_hwid_limit_input": "Device limit",
"user_hwid_limit_input_hint": "Empty means tariff/default; 0 or the checkbox means unlimited.",
"user_hwid_limit_default_placeholder": "Tariff",
"user_hwid_limit_save": "Save",
"user_hwid_limit_status": "Current: {current}",
"user_hwid_limit_default": "Tariff / default",
"user_hwid_limit_unlimited": "Unlimited",
"user_hwid_limit_count": "{count} devices",
"user_hwid_limit_with_extra": "{total} devices ({base} + {extra})",
"hwid_limit_saved": "Device limit saved",
"hwid_limit_invalid": "Enter an integer device count from 0 to 1,000,000 or enable unlimited",
"user_premium_override_card_title": "Premium traffic",
"user_premium_override_card_hint": "Unlimited access and extra volume for premium squads on top of the tariff.",
"user_regular_override_card_title": "Main traffic",
+33
View File
@@ -284,6 +284,8 @@
"admin_user_premium_override_label": "🌟 Премиум-оверрайд:",
"admin_user_premium_override_unlimited": "Безлимит",
"admin_user_premium_override_bonus_value": "+{gb} GB",
"admin_user_hwid_limit_button": "📱 HWID лимит",
"admin_user_hwid_limit_label": "📱 HWID-устройства:",
"admin_premium_override_title": "🌟 Премиум-оверрайд",
"admin_premium_override_hint": "Бесплатно увеличьте лимит премиум-трафика или сделайте его безлимитным для этого пользователя.",
"admin_premium_override_current": "Сейчас: {current}",
@@ -300,6 +302,23 @@
"admin_premium_override_bonus_set": "✅ Премиум-оверрайд: +{gb} GB для пользователя {user_id}",
"admin_premium_override_saved": "✅ Премиум-оверрайд сохранён",
"admin_premium_override_save_error": "❌ Не удалось сохранить премиум-оверрайд",
"admin_hwid_limit_title": "📱 Лимит HWID-устройств",
"admin_hwid_limit_hint": "Задайте ручной базовый лимит устройств для пользователя. 0 означает безлимит; сброс вернёт тарифный или default-лимит.",
"admin_hwid_limit_current": "Сейчас: {current}",
"admin_hwid_limit_state_default": "тарифный / default",
"admin_hwid_limit_state_unlimited": "безлимит",
"admin_hwid_limit_state_count": "{count} устройств",
"admin_hwid_limit_state_with_extra": "{total} устройств ({base} + {extra})",
"admin_hwid_limit_btn_set_number": "🔢 Задать число",
"admin_hwid_limit_btn_unlimited": "♾ Включить безлимит",
"admin_hwid_limit_btn_reset": "↩️ Вернуть тариф/default",
"admin_hwid_limit_prompt": "Введите лимит HWID-устройств для пользователя {user_id}. 0 означает безлимит:",
"admin_hwid_limit_invalid": "❌ Введите целое число устройств от 0 до 1 000 000.",
"admin_hwid_limit_no_subscription": "У пользователя нет активной подписки",
"admin_hwid_limit_state_missing": "⚠️ Целевой пользователь не найден в состоянии. Откройте карточку пользователя заново.",
"admin_hwid_limit_set": "✅ Лимит HWID-устройств для пользователя {user_id}: {current}",
"admin_hwid_limit_saved": "✅ Лимит HWID-устройств сохранён",
"admin_hwid_limit_save_error": "❌ Не удалось сохранить лимит HWID-устройств",
"admin_user_traffic_grant_button": "🎁 Выдать ГБ",
"admin_traffic_grant_title": "🎁 Выдать трафик",
"admin_traffic_grant_hint": "Зачисление ГБ на баланс пользователя — как при докупке, но без оплаты. Лимит и сквады в панели обновятся сразу.",
@@ -1313,7 +1332,21 @@
"admin_user_label_main_traffic": "Основной трафик",
"admin_user_traffic_left": "Осталось: {left}",
"admin_user_label_premium_squads": "Premium-сквады",
"user_label_hwid_devices": "HWID-устройства",
"user_override_unlimited_short": "Безлимит",
"user_hwid_limit_card_title": "HWID-устройства",
"user_hwid_limit_card_hint": "Ручной лимит устройств для пользователя. Пустое поле вернёт тарифный или default-лимит.",
"user_hwid_limit_input": "Лимит устройств",
"user_hwid_limit_input_hint": "Пусто — тариф/default; 0 или галочка — безлимит.",
"user_hwid_limit_default_placeholder": "Тариф",
"user_hwid_limit_save": "Сохранить",
"user_hwid_limit_status": "Сейчас: {current}",
"user_hwid_limit_default": "Тарифный / default",
"user_hwid_limit_unlimited": "Безлимит",
"user_hwid_limit_count": "{count} устройств",
"user_hwid_limit_with_extra": "{total} устройств ({base} + {extra})",
"hwid_limit_saved": "Лимит устройств сохранён",
"hwid_limit_invalid": "Введите целое число устройств от 0 до 1 000 000 или включите безлимит",
"user_premium_override_card_title": "Премиум-трафик",
"user_premium_override_card_hint": "Безлимит и дополнительный объём для премиум-сквадов поверх тарифа.",
"user_regular_override_card_title": "Основной трафик",