mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-30 02:23:47 +00:00
feat: redesign admin settings with tree navigation and compact layout
- Replace flat sidebar with collapsible tree groups (7 groups, 52 sub-items) - Map all 61 backend category keys to sidebar navigation - Add QuickToggles panel for boolean settings - Replace card-style SettingRow with compact SettingsTableRow - Add breadcrumb navigation for tree sub-items - Add source badges (modified/DB/ENV) on settings - Implement two-level mobile navigation with group chips - Add i18n translations for all new keys (en, ru, zh, fa)
This commit is contained in:
@@ -1836,8 +1836,11 @@
|
||||
"title": "System Settings",
|
||||
"allCategories": "All categories",
|
||||
"noSettings": "No settings found",
|
||||
"quickToggles": "Quick Toggles",
|
||||
"modified": "Modified",
|
||||
"readOnly": "Read only",
|
||||
"badgeDb": "DB",
|
||||
"badgeEnv": "ENV",
|
||||
"reset": "Reset",
|
||||
"categoriesCount": "categories",
|
||||
"settingsCount": "settings",
|
||||
@@ -1910,6 +1913,84 @@
|
||||
"quickPresets": "Quick presets",
|
||||
"resetAllColors": "Reset all colors",
|
||||
"statusColors": "Status colors",
|
||||
"favorites": "Favorites",
|
||||
"branding": "Branding",
|
||||
"theme": "Theme",
|
||||
"payments": "Payments",
|
||||
"subscriptions": "Subscriptions",
|
||||
"interface": "Interface",
|
||||
"notifications": "Notifications",
|
||||
"database": "Database",
|
||||
"system": "System",
|
||||
"users": "Users",
|
||||
"customization": "Customization",
|
||||
"settingsLabel": "Settings",
|
||||
"backToAdmin": "Back to admin",
|
||||
"totalCount": "{{count}} total",
|
||||
"modifiedCount": "{{count}} modified",
|
||||
"groups": {
|
||||
"payments": "Payments",
|
||||
"subscriptions": "Subscriptions",
|
||||
"interface": "Interface",
|
||||
"users": "Users",
|
||||
"notifications": "Notifications",
|
||||
"database": "Database",
|
||||
"system": "System"
|
||||
},
|
||||
"tree": {
|
||||
"payments_general": "General",
|
||||
"payments_stars": "Telegram Stars",
|
||||
"payments_yookassa": "YooKassa",
|
||||
"payments_cryptobot": "CryptoBot",
|
||||
"payments_cloudpayments": "CloudPayments",
|
||||
"payments_freekassa": "FreeKassa",
|
||||
"payments_kassa_ai": "Kassa AI",
|
||||
"payments_platega": "Platega",
|
||||
"payments_pal24": "PAL24",
|
||||
"payments_heleket": "Heleket",
|
||||
"payments_mulenpay": "MulenPay",
|
||||
"payments_tribute": "Tribute",
|
||||
"payments_wata": "Wata",
|
||||
"payments_riopay": "RioPay",
|
||||
"payments_severpay": "SeverPay",
|
||||
"subs_core": "Core",
|
||||
"subs_trial": "Trial",
|
||||
"subs_pricing": "Pricing",
|
||||
"subs_periods": "Periods",
|
||||
"subs_traffic": "Traffic",
|
||||
"subs_simple": "Simple subscription",
|
||||
"subs_autopay": "Auto-pay",
|
||||
"iface_general": "General",
|
||||
"iface_connect": "Connect button",
|
||||
"iface_miniapp": "MiniApp",
|
||||
"iface_happ": "HAPP",
|
||||
"iface_widget": "Login Widget",
|
||||
"iface_oidc": "OIDC",
|
||||
"iface_skip": "Skip steps",
|
||||
"iface_additional": "Additional",
|
||||
"users_support": "Support",
|
||||
"users_referral": "Referral",
|
||||
"users_channel": "Channel",
|
||||
"users_localization": "Localization",
|
||||
"users_moderation": "Moderation",
|
||||
"notif_user": "User notifications",
|
||||
"notif_admin": "Admin notifications",
|
||||
"notif_reports": "Reports",
|
||||
"db_general": "General",
|
||||
"db_postgres": "PostgreSQL",
|
||||
"db_sqlite": "SQLite",
|
||||
"db_redis": "Redis",
|
||||
"sys_core": "Core & Debug",
|
||||
"sys_remnawave": "RemnaWave",
|
||||
"sys_webapi": "Web API",
|
||||
"sys_webhook": "Webhook",
|
||||
"sys_server": "Server status",
|
||||
"sys_monitoring": "Monitoring",
|
||||
"sys_maintenance": "Maintenance",
|
||||
"sys_backup": "Backup",
|
||||
"sys_version": "Version",
|
||||
"sys_logging": "Logging"
|
||||
},
|
||||
"categories": {
|
||||
"TELEGRAM_WIDGET": "Telegram Login Widget",
|
||||
"TELEGRAM_OIDC": "Telegram Login (OIDC)"
|
||||
|
||||
@@ -1497,6 +1497,7 @@
|
||||
"title": "تنظیمات سیستم",
|
||||
"allCategories": "همه دستهها",
|
||||
"noSettings": "تنظیماتی یافت نشد",
|
||||
"quickToggles": "تغییر سریع",
|
||||
"modified": "تغییر یافته",
|
||||
"readOnly": "فقط خواندنی",
|
||||
"reset": "بازنشانی",
|
||||
@@ -1571,6 +1572,86 @@
|
||||
"quickPresets": "پیشتنظیمهای سریع",
|
||||
"resetAllColors": "بازنشانی همه رنگها",
|
||||
"statusColors": "رنگهای وضعیت",
|
||||
"favorites": "علاقهمندیها",
|
||||
"branding": "برندسازی",
|
||||
"theme": "پوسته",
|
||||
"payments": "پرداختها",
|
||||
"subscriptions": "اشتراکها",
|
||||
"interface": "رابط کاربری",
|
||||
"notifications": "اعلانها",
|
||||
"database": "پایگاه داده",
|
||||
"system": "سیستم",
|
||||
"users": "کاربران",
|
||||
"customization": "سفارشیسازی",
|
||||
"settingsLabel": "تنظیمات",
|
||||
"backToAdmin": "بازگشت به مدیریت",
|
||||
"totalCount": "{{count}} مورد",
|
||||
"modifiedCount": "{{count}} تغییر یافته",
|
||||
"badgeDb": "پایگاه داده",
|
||||
"badgeEnv": "متغیر محیطی",
|
||||
"groups": {
|
||||
"payments": "پرداختها",
|
||||
"subscriptions": "اشتراکها",
|
||||
"interface": "رابط کاربری",
|
||||
"users": "کاربران",
|
||||
"notifications": "اعلانها",
|
||||
"database": "پایگاه داده",
|
||||
"system": "سیستم"
|
||||
},
|
||||
"tree": {
|
||||
"payments_general": "عمومی",
|
||||
"payments_stars": "Telegram Stars",
|
||||
"payments_yookassa": "YooKassa",
|
||||
"payments_cryptobot": "CryptoBot",
|
||||
"payments_cloudpayments": "CloudPayments",
|
||||
"payments_freekassa": "FreeKassa",
|
||||
"payments_kassa_ai": "Kassa AI",
|
||||
"payments_platega": "Platega",
|
||||
"payments_pal24": "PAL24",
|
||||
"payments_heleket": "Heleket",
|
||||
"payments_mulenpay": "MulenPay",
|
||||
"payments_tribute": "Tribute",
|
||||
"payments_wata": "Wata",
|
||||
"payments_riopay": "RioPay",
|
||||
"payments_severpay": "SeverPay",
|
||||
"subs_core": "هسته",
|
||||
"subs_trial": "آزمایشی",
|
||||
"subs_pricing": "قیمتگذاری",
|
||||
"subs_periods": "دورهها",
|
||||
"subs_traffic": "ترافیک",
|
||||
"subs_simple": "اشتراک ساده",
|
||||
"subs_autopay": "پرداخت خودکار",
|
||||
"iface_general": "عمومی",
|
||||
"iface_connect": "دکمه اتصال",
|
||||
"iface_miniapp": "MiniApp",
|
||||
"iface_happ": "HAPP",
|
||||
"iface_widget": "ویجت ورود",
|
||||
"iface_oidc": "OIDC",
|
||||
"iface_skip": "رد کردن مراحل",
|
||||
"iface_additional": "اضافی",
|
||||
"users_support": "پشتیبانی",
|
||||
"users_referral": "معرفی",
|
||||
"users_channel": "کانال",
|
||||
"users_localization": "بومیسازی",
|
||||
"users_moderation": "مدیریت محتوا",
|
||||
"notif_user": "اعلانهای کاربر",
|
||||
"notif_admin": "اعلانهای مدیر",
|
||||
"notif_reports": "گزارشها",
|
||||
"db_general": "عمومی",
|
||||
"db_postgres": "PostgreSQL",
|
||||
"db_sqlite": "SQLite",
|
||||
"db_redis": "Redis",
|
||||
"sys_core": "هسته و اشکالزدایی",
|
||||
"sys_remnawave": "RemnaWave",
|
||||
"sys_webapi": "Web API",
|
||||
"sys_webhook": "Webhook",
|
||||
"sys_server": "وضعیت سرور",
|
||||
"sys_monitoring": "نظارت",
|
||||
"sys_maintenance": "نگهداری",
|
||||
"sys_backup": "پشتیبانگیری",
|
||||
"sys_version": "نسخه",
|
||||
"sys_logging": "لاگها"
|
||||
},
|
||||
"categories": {
|
||||
"TELEGRAM_WIDGET": "Telegram Login Widget",
|
||||
"TELEGRAM_OIDC": "Telegram Login (OIDC)"
|
||||
|
||||
@@ -1861,8 +1861,11 @@
|
||||
"title": "Настройки системы",
|
||||
"allCategories": "Все категории",
|
||||
"noSettings": "Настройки не найдены",
|
||||
"quickToggles": "Быстрые переключатели",
|
||||
"modified": "Изменено",
|
||||
"readOnly": "Только чтение",
|
||||
"badgeDb": "БД",
|
||||
"badgeEnv": "ENV",
|
||||
"reset": "Сбросить",
|
||||
"categoriesCount": "категорий",
|
||||
"settingsCount": "настроек",
|
||||
@@ -1936,6 +1939,74 @@
|
||||
"googleLabelPlaceholder": "Например: AbCdEfGhIjKl",
|
||||
"googleLabelHint": "Метка конверсии для отслеживания событий",
|
||||
"analyticsHint": "Счётчики автоматически встраиваются на все страницы кабинета. После сохранения ID скрипты подключаются при следующей загрузке страницы. Для удаления счётчика очистите поле и сохраните.",
|
||||
"customization": "Кастомизация",
|
||||
"settingsLabel": "Настройки",
|
||||
"backToAdmin": "Назад к админке",
|
||||
"totalCount": "{{count}} всего",
|
||||
"modifiedCount": "{{count}} изменено",
|
||||
"groups": {
|
||||
"payments": "Платежи",
|
||||
"subscriptions": "Подписки",
|
||||
"interface": "Интерфейс",
|
||||
"users": "Пользователи",
|
||||
"notifications": "Уведомления",
|
||||
"database": "База данных",
|
||||
"system": "Система"
|
||||
},
|
||||
"tree": {
|
||||
"payments_general": "Основные",
|
||||
"payments_stars": "Telegram Stars",
|
||||
"payments_yookassa": "YooKassa",
|
||||
"payments_cryptobot": "CryptoBot",
|
||||
"payments_cloudpayments": "CloudPayments",
|
||||
"payments_freekassa": "FreeKassa",
|
||||
"payments_kassa_ai": "Kassa AI",
|
||||
"payments_platega": "Platega",
|
||||
"payments_pal24": "PAL24",
|
||||
"payments_heleket": "Heleket",
|
||||
"payments_mulenpay": "MulenPay",
|
||||
"payments_tribute": "Tribute",
|
||||
"payments_wata": "Wata",
|
||||
"payments_riopay": "RioPay",
|
||||
"payments_severpay": "SeverPay",
|
||||
"subs_core": "Основные",
|
||||
"subs_trial": "Пробный период",
|
||||
"subs_pricing": "Цены",
|
||||
"subs_periods": "Периоды",
|
||||
"subs_traffic": "Трафик",
|
||||
"subs_simple": "Простая подписка",
|
||||
"subs_autopay": "Автоплатёж",
|
||||
"iface_general": "Основные",
|
||||
"iface_connect": "Кнопка подключения",
|
||||
"iface_miniapp": "MiniApp",
|
||||
"iface_happ": "HAPP",
|
||||
"iface_widget": "Виджет входа",
|
||||
"iface_oidc": "OIDC",
|
||||
"iface_skip": "Пропуск шагов",
|
||||
"iface_additional": "Дополнительно",
|
||||
"users_support": "Поддержка",
|
||||
"users_referral": "Реферальная система",
|
||||
"users_channel": "Канал",
|
||||
"users_localization": "Локализация",
|
||||
"users_moderation": "Модерация",
|
||||
"notif_user": "Уведомления пользователей",
|
||||
"notif_admin": "Уведомления админов",
|
||||
"notif_reports": "Отчёты",
|
||||
"db_general": "Основные",
|
||||
"db_postgres": "PostgreSQL",
|
||||
"db_sqlite": "SQLite",
|
||||
"db_redis": "Redis",
|
||||
"sys_core": "Ядро и отладка",
|
||||
"sys_remnawave": "RemnaWave",
|
||||
"sys_webapi": "Web API",
|
||||
"sys_webhook": "Webhook",
|
||||
"sys_server": "Статус сервера",
|
||||
"sys_monitoring": "Мониторинг",
|
||||
"sys_maintenance": "Обслуживание",
|
||||
"sys_backup": "Бэкап",
|
||||
"sys_version": "Версия",
|
||||
"sys_logging": "Логи"
|
||||
},
|
||||
"presets": {
|
||||
"standard": "Стандарт",
|
||||
"ocean": "Океан",
|
||||
|
||||
@@ -1535,6 +1535,7 @@
|
||||
"title": "系统设置",
|
||||
"allCategories": "所有分类",
|
||||
"noSettings": "未找到设置",
|
||||
"quickToggles": "快速开关",
|
||||
"modified": "已修改",
|
||||
"readOnly": "只读",
|
||||
"reset": "重置",
|
||||
@@ -1609,6 +1610,86 @@
|
||||
"quickPresets": "快速预设",
|
||||
"resetAllColors": "重置所有颜色",
|
||||
"statusColors": "状态颜色",
|
||||
"favorites": "收藏",
|
||||
"branding": "品牌",
|
||||
"theme": "主题",
|
||||
"payments": "支付",
|
||||
"subscriptions": "订阅",
|
||||
"interface": "界面",
|
||||
"notifications": "通知",
|
||||
"database": "数据库",
|
||||
"system": "系统",
|
||||
"users": "用户",
|
||||
"customization": "自定义",
|
||||
"settingsLabel": "设置",
|
||||
"backToAdmin": "返回管理面板",
|
||||
"totalCount": "共 {{count}} 项",
|
||||
"modifiedCount": "已修改 {{count}} 项",
|
||||
"badgeDb": "数据库",
|
||||
"badgeEnv": "环境变量",
|
||||
"groups": {
|
||||
"payments": "支付",
|
||||
"subscriptions": "订阅",
|
||||
"interface": "界面",
|
||||
"users": "用户",
|
||||
"notifications": "通知",
|
||||
"database": "数据库",
|
||||
"system": "系统"
|
||||
},
|
||||
"tree": {
|
||||
"payments_general": "通用",
|
||||
"payments_stars": "Telegram Stars",
|
||||
"payments_yookassa": "YooKassa",
|
||||
"payments_cryptobot": "CryptoBot",
|
||||
"payments_cloudpayments": "CloudPayments",
|
||||
"payments_freekassa": "FreeKassa",
|
||||
"payments_kassa_ai": "Kassa AI",
|
||||
"payments_platega": "Platega",
|
||||
"payments_pal24": "PAL24",
|
||||
"payments_heleket": "Heleket",
|
||||
"payments_mulenpay": "MulenPay",
|
||||
"payments_tribute": "Tribute",
|
||||
"payments_wata": "Wata",
|
||||
"payments_riopay": "RioPay",
|
||||
"payments_severpay": "SeverPay",
|
||||
"subs_core": "核心",
|
||||
"subs_trial": "试用",
|
||||
"subs_pricing": "定价",
|
||||
"subs_periods": "周期",
|
||||
"subs_traffic": "流量",
|
||||
"subs_simple": "简单订阅",
|
||||
"subs_autopay": "自动支付",
|
||||
"iface_general": "通用",
|
||||
"iface_connect": "连接按钮",
|
||||
"iface_miniapp": "MiniApp",
|
||||
"iface_happ": "HAPP",
|
||||
"iface_widget": "登录小部件",
|
||||
"iface_oidc": "OIDC",
|
||||
"iface_skip": "跳过步骤",
|
||||
"iface_additional": "附加",
|
||||
"users_support": "支持",
|
||||
"users_referral": "推荐",
|
||||
"users_channel": "频道",
|
||||
"users_localization": "本地化",
|
||||
"users_moderation": "审核",
|
||||
"notif_user": "用户通知",
|
||||
"notif_admin": "管理员通知",
|
||||
"notif_reports": "报告",
|
||||
"db_general": "通用",
|
||||
"db_postgres": "PostgreSQL",
|
||||
"db_sqlite": "SQLite",
|
||||
"db_redis": "Redis",
|
||||
"sys_core": "核心与调试",
|
||||
"sys_remnawave": "RemnaWave",
|
||||
"sys_webapi": "Web API",
|
||||
"sys_webhook": "Webhook",
|
||||
"sys_server": "服务器状态",
|
||||
"sys_monitoring": "监控",
|
||||
"sys_maintenance": "维护",
|
||||
"sys_backup": "备份",
|
||||
"sys_version": "版本",
|
||||
"sys_logging": "日志"
|
||||
},
|
||||
"categories": {
|
||||
"TELEGRAM_WIDGET": "Telegram Login Widget",
|
||||
"TELEGRAM_OIDC": "Telegram Login (OIDC)"
|
||||
|
||||
Reference in New Issue
Block a user