feat: allow to edit remnawave panel settings in admin panel, ensure using i18n

This commit is contained in:
3252a8
2026-05-21 11:26:03 +03:00
parent b3f67a5398
commit 028f0680c6
6 changed files with 301 additions and 38 deletions
+70 -1
View File
@@ -946,6 +946,18 @@
"admin_settings_section_notifications": "Уведомления",
"admin_settings_section_devices": "Устройства",
"admin_settings_section_support": "Поддержка",
"admin_settings_subsection_common": "Общие",
"admin_settings_subsection_remnawave": "Remnawave",
"admin_settings_subsection_telegram_stars": "Telegram Stars",
"admin_settings_subsection_yookassa": "YooKassa",
"admin_settings_subsection_freekassa": "FreeKassa",
"admin_settings_subsection_platega": "Platega",
"admin_settings_subsection_severpay": "SeverPay",
"admin_settings_subsection_cryptopay": "CryptoPay",
"admin_settings_subsection_wata": "Wata",
"admin_settings_subsection_heleket": "Heleket",
"admin_settings_validation_errors": "Ошибки: {errors}",
"admin_settings_save_error": "Ошибка: {error}",
"admin_sync_started": "Синхронизация запущена",
"admin_sync_error": "Ошибка синхронизации",
"admin_error": "Ошибка",
@@ -1288,10 +1300,37 @@
"admin_settings_field_required_channel_id_description": "Telegram ID канала, в котором нужно состоять.",
"admin_settings_field_required_channel_link_label": "Ссылка на канал",
"admin_settings_field_required_channel_link_description": "Имя пользователя или invite-link.",
"admin_settings_field_panel_api_url_label": "URL API Remnawave",
"admin_settings_field_panel_api_url_description": "Например, https://panel.example.com/api.",
"admin_settings_field_panel_api_key_label": "API-ключ Remnawave",
"admin_settings_field_panel_api_key_description": "Секретный ключ API панели.",
"admin_settings_field_panel_webhook_secret_label": "Секрет вебхуков Remnawave",
"admin_settings_field_panel_webhook_secret_description": "Используется для проверки входящих вебхуков панели.",
"admin_settings_field_user_squad_uuids_label": "Internal Squads по умолчанию",
"admin_settings_field_user_squad_uuids_description": "UUID через запятую для legacy-режима без JSON-каталога тарифов.",
"admin_settings_field_user_external_squad_uuid_label": "External Squad по умолчанию",
"admin_settings_field_user_external_squad_uuid_description": "Необязательный UUID External Squad для новых пользователей.",
"admin_settings_field_webapp_title_label": "Название Web App",
"admin_settings_field_subscription_mini_app_url_label": "Публичный URL Mini App",
"admin_settings_field_subscription_mini_app_url_description": "Например, https://app.example.com/.",
"admin_settings_field_webapp_primary_color_label": "Основной цвет",
"admin_settings_field_webapp_logo_use_emoji_label": "Использовать эмоджи-логотип",
"admin_settings_field_webapp_logo_url_label": "URL логотипа",
"admin_settings_field_webapp_logo_emoji_label": "Эмоджи-логотип",
"admin_settings_field_webapp_logo_emoji_font_label": "Шрифт эмоджи-логотипа",
"admin_settings_field_webapp_logo_emoji_font_description": "Выберите шрифт для отображения эмодзи-логотипа.",
"admin_settings_field_webapp_logo_emoji_font_choice_system": "Системный (по умолчанию)",
"admin_settings_field_webapp_logo_emoji_font_choice_noto_color": "Noto Color Emoji",
"admin_settings_field_webapp_logo_emoji_font_choice_noto_color_animated": "Noto Color Emoji Animated",
"admin_settings_field_webapp_logo_emoji_font_choice_noto_emoji": "Noto Emoji",
"admin_settings_field_webapp_logo_emoji_font_choice_twemoji": "Twitter Emoji",
"admin_settings_field_webapp_logo_emoji_font_choice_openmoji": "OpenMoji",
"admin_settings_field_webapp_logo_emoji_font_choice_apple": "Apple Color Emoji (local)",
"admin_settings_field_webapp_logo_emoji_font_choice_segoe": "Segoe UI Emoji (local)",
"admin_settings_field_webapp_logo_emoji_font_choice_noto_local": "Noto Emoji (local)",
"admin_settings_field_webapp_favicon_use_custom_label": "Использовать отдельную favicon",
"admin_settings_field_webapp_favicon_url_label": "URL отдельной favicon",
"admin_settings_field_webapp_logo_favicon_url_label": "Favicon из логотипа",
"admin_settings_field_webapp_enabled_label": "Web App включён",
"admin_settings_field_month_1_enabled_label": "Тариф 1 месяц",
"admin_settings_field_month_3_enabled_label": "Тариф 3 месяца",
@@ -1309,7 +1348,7 @@
"admin_settings_field_traffic_packages_description": "Формат: 10:199,50:799 (ГБ:цена)",
"admin_settings_field_stars_traffic_packages_label": "Пакеты трафика (Stars)",
"admin_settings_field_payment_methods_order_label": "Порядок методов оплаты",
"admin_settings_field_payment_methods_order_description": "Через запятую, например: severpay,freekassa,yookassa",
"admin_settings_field_payment_methods_order_description": "Через запятую, например: severpay,freekassa,yookassa,heleket",
"admin_settings_field_subscription_purchase_description_enabled_label": "Показывать описание подписки",
"admin_settings_field_subscription_purchase_description_enabled_description": "Текст появится перед выбором срока покупки или продления.",
"admin_settings_field_subscription_purchase_description_ru_label": "Описание подписки (RU)",
@@ -1363,6 +1402,35 @@
"admin_settings_field_cryptopay_currency_type_label": "Currency type",
"admin_settings_field_cryptopay_currency_type_description": "fiat или crypto",
"admin_settings_field_cryptopay_asset_label": "Asset",
"admin_settings_field_wata_enabled_label": "Включена",
"admin_settings_field_wata_api_token_label": "API token",
"admin_settings_field_wata_base_url_label": "Base URL",
"admin_settings_field_wata_return_url_label": "Return URL",
"admin_settings_field_wata_failed_url_label": "Failed URL",
"admin_settings_field_wata_payment_link_ttl_days_label": "Срок жизни ссылки (дней)",
"admin_settings_field_wata_payment_link_ttl_days_description": "1..30; по умолчанию Wata использует 3 дня.",
"admin_settings_field_wata_webhook_verify_signature_label": "Проверять подпись вебхука",
"admin_settings_field_wata_public_key_label": "Публичный ключ вебхука",
"admin_settings_field_wata_public_key_description": "Необязательно. Если пусто, бэкенд получит ключ из Wata.",
"admin_settings_field_wata_trusted_ips_label": "Доверенные IP",
"admin_settings_field_wata_trusted_ips_description": "IP-адреса через запятую, с которых принимаются вебхуки Wata.",
"admin_settings_field_heleket_enabled_label": "Включена",
"admin_settings_field_heleket_merchant_id_label": "Merchant ID",
"admin_settings_field_heleket_api_key_label": "Payment API key",
"admin_settings_field_heleket_base_url_label": "Base URL",
"admin_settings_field_heleket_currency_label": "Валюта инвойса",
"admin_settings_field_heleket_currency_description": "Фиатный или криптовалютный код (RUB, USD, USDT).",
"admin_settings_field_heleket_to_currency_label": "Целевая криптовалюта",
"admin_settings_field_heleket_to_currency_description": "Необязательная криптовалюта для конвертации.",
"admin_settings_field_heleket_network_label": "Blockchain network",
"admin_settings_field_heleket_network_description": "Необязательный код сети (tron, bsc, eth).",
"admin_settings_field_heleket_return_url_label": "Return URL",
"admin_settings_field_heleket_success_url_label": "Success URL",
"admin_settings_field_heleket_lifetime_seconds_label": "Срок жизни инвойса (сек)",
"admin_settings_field_heleket_lifetime_seconds_description": "300..43200; по умолчанию Heleket использует 3600.",
"admin_settings_field_heleket_verify_webhook_signature_label": "Проверять подпись вебхука",
"admin_settings_field_heleket_trusted_ips_label": "Доверенные IP",
"admin_settings_field_heleket_trusted_ips_description": "IP-адреса через запятую, с которых принимаются вебхуки Heleket.",
"admin_settings_field_trial_enabled_label": "Триал включён",
"admin_settings_field_trial_duration_days_label": "Длительность триала (дней)",
"admin_settings_field_trial_traffic_limit_gb_label": "Лимит трафика триала (ГБ)",
@@ -1387,6 +1455,7 @@
"admin_settings_field_log_promo_activations_label": "Логировать активации промокодов",
"admin_settings_field_log_trial_activations_label": "Логировать активации триала",
"admin_settings_field_log_suspicious_activity_label": "Логировать подозрительные действия",
"admin_settings_field_log_support_label": "Логировать поддержку",
"admin_settings_field_log_level_label": "Глобальный уровень логов",
"admin_settings_field_log_level_description": "DEBUG / INFO / WARNING / ERROR",
"admin_settings_field_log_chat_id_label": "ID чата для логов",