Files
amneziavpnphp/migrations/003_translations_es.sql
infosave2007 fc39346240 feat: добавлена возможность импорта из wg-easy и 3x-ui панелей
Основные изменения:
- Создан класс PanelImporter для парсинга и импорта клиентов
- Добавлена поддержка wg-easy (db.json)
- Добавлена поддержка 3x-ui (export JSON)
- Создана таблица panel_imports для отслеживания истории
- Добавлен UI для загрузки backup файлов при создании сервера
- Добавлены API endpoints: POST /api/servers/{id}/import и GET /api/servers/{id}/imports
- Автоматический импорт после деплоя сервера
- Переводы на всех 6 языках (EN, RU, ES, DE, FR, ZH)
- Обновлена документация в README

Функционал:
- Импорт клиентов с сохранением ключей и IP (wg-easy)
- Импорт клиентов с автогенерацией ключей (3x-ui)
- Поддержка экспирации и лимитов трафика из исходных панелей
- История импортов с информацией о количестве клиентов
- Обработка ошибок с детальным логированием
2025-11-08 12:40:43 +03:00

149 lines
7.5 KiB
SQL

-- ES translations
-- This migration adds ES language translations
INSERT INTO translations (language_code, translation_key, translation_value) VALUES
('es', 'auth.email', 'Correo electrónico'),
('es', 'auth.login', 'Iniciar sesión'),
('es', 'auth.name', 'Nombre'),
('es', 'auth.password', 'Contraseña'),
('es', 'auth.register', 'Registrarse'),
('es', 'backups.create', 'Crear copia de seguridad'),
('es', 'backups.create_confirm', '¿Crear copia de seguridad de todos los clientes en este servidor?'),
('es', 'backups.created_success', 'Copia de seguridad creada exitosamente'),
('es', 'backups.delete_confirm', '¿Eliminar esta copia de seguridad permanentemente?'),
('es', 'backups.deleted_success', 'Copia de seguridad eliminada exitosamente'),
('es', 'backups.login_required', 'Por favor inicie sesión vía API para gestionar copias de seguridad'),
('es', 'backups.no_backups', 'Aún no hay copias de seguridad'),
('es', 'backups.restore', 'Restaurar'),
('es', 'backups.restore_confirm', '¿Restaurar clientes desde esta copia de seguridad? Los clientes existentes no se verán afectados.'),
('es', 'backups.restored_success', 'Restaurado'),
('es', 'backups.title', 'Copias de seguridad del servidor'),
('es', 'clients.actions', 'Acciones'),
('es', 'clients.add', 'Agregar cliente'),
('es', 'clients.create', 'Crear cliente'),
('es', 'clients.delete', 'Eliminar'),
('es', 'clients.delete_confirm', '¿Eliminar este cliente permanentemente?'),
('es', 'clients.download_config', 'Descargar configuración'),
('es', 'clients.expiration', 'Vencimiento'),
('es', 'clients.expired', 'Vencido'),
('es', 'clients.ip', 'Dirección IP'),
('es', 'clients.last_handshake', 'Último contacto'),
('es', 'clients.name', 'Nombre del cliente'),
('es', 'clients.never', 'Nunca'),
('es', 'clients.never_expires', 'Nunca vence'),
('es', 'clients.no_clients', 'Aún no hay clientes'),
('es', 'clients.overlimit', 'Límite excedido'),
('es', 'clients.qr_code', 'Código QR'),
('es', 'clients.received', 'Recibido'),
('es', 'clients.restore', 'Restaurar'),
('es', 'clients.revoke', 'Revocar'),
('es', 'clients.revoke_confirm', '¿Revocar acceso para este cliente?'),
('es', 'clients.sent', 'Enviado'),
('es', 'clients.server', 'Servidor'),
('es', 'clients.status', 'Estado'),
('es', 'clients.sync_stats', 'Sincronizar estadísticas'),
('es', 'clients.title', 'Clientes'),
('es', 'clients.traffic', 'Tráfico'),
('es', 'clients.traffic_limit', 'Límite de tráfico'),
('es', 'clients.unlimited', 'Ilimitado'),
('es', 'clients.custom_seconds', 'Personalizado (segundos)'),
('es', 'clients.custom_mb', 'Personalizado (MB)'),
('es', 'clients.enter_seconds', 'Ingrese segundos'),
('es', 'clients.enter_megabytes', 'Ingrese megabytes'),
('es', 'common.days', 'días'),
('es', 'dashboard.active_clients', 'Clientes activos'),
('es', 'dashboard.add_first_server', 'Agregar primer servidor'),
('es', 'dashboard.get_started', 'Comience agregando su primer servidor VPN'),
('es', 'dashboard.no_servers', 'Aún no hay servidores'),
('es', 'dashboard.quick_actions', 'Acciones rápidas'),
('es', 'dashboard.recent_servers', 'Servidores recientes'),
('es', 'dashboard.title', 'Panel de control'),
('es', 'dashboard.total_clients', 'Total de clientes'),
('es', 'dashboard.total_servers', 'Total de servidores'),
('es', 'dashboard.total_traffic', 'Tráfico total'),
('es', 'dashboard.welcome', 'Bienvenido al Panel de Gestión de Amnezia VPN'),
('es', 'form.cancel', 'Cancelar'),
('es', 'form.close', 'Cerrar'),
('es', 'form.create', 'Crear'),
('es', 'form.loading', 'Cargando...'),
('es', 'form.processing', 'Procesando...'),
('es', 'form.save', 'Guardar'),
('es', 'form.submit', 'Enviar'),
('es', 'form.update', 'Actualizar'),
('es', 'menu.clients', 'Clientes'),
('es', 'menu.dashboard', 'Panel de control'),
('es', 'menu.logout', 'Cerrar sesión'),
('es', 'menu.servers', 'Servidores'),
('es', 'menu.settings', 'Configuración'),
('es', 'menu.users', 'Usuarios'),
('es', 'message.confirm', '¿Está seguro?'),
('es', 'message.deleted', 'Eliminado exitosamente'),
('es', 'message.deployed', 'Implementado exitosamente'),
('es', 'message.error', 'Ha ocurrido un error'),
('es', 'message.saved', 'Guardado exitosamente'),
('es', 'message.success', 'Operación completada exitosamente'),
('es', 'servers.actions', 'Acciones'),
('es', 'servers.add', 'Agregar servidor'),
('es', 'servers.clients', 'Clientes'),
('es', 'servers.delete', 'Eliminar'),
('es', 'servers.deploy', 'Implementar'),
('es', 'servers.edit', 'Editar'),
('es', 'servers.host', 'Host'),
('es', 'servers.name', 'Nombre'),
('es', 'servers.port', 'Puerto'),
('es', 'servers.status', 'Estado'),
('es', 'servers.title', 'Servidores'),
('es', 'servers.view', 'Ver'),
('es', 'settings.actions', 'Acciones'),
('es', 'settings.api_key_configured', 'Clave API configurada'),
('es', 'settings.api_keys', 'Claves API'),
('es', 'settings.api_keys_desc', 'Configurar claves API para servicios externos'),
('es', 'settings.auto_translate', 'Auto-traducir'),
('es', 'settings.change_password', 'Cambiar contraseña'),
('es', 'settings.confirm_password', 'Confirmar contraseña'),
('es', 'settings.confirm_translate', '¿Iniciar traducción automática? Esto puede tomar unos minutos.'),
('es', 'settings.current_password', 'Contraseña actual'),
('es', 'settings.description', 'Gestionar configuración del panel e integraciones API'),
('es', 'settings.error_empty_key', 'La clave API no puede estar vacía'),
('es', 'settings.error_invalid_key', 'Formato de clave API inválido'),
('es', 'settings.error_key_test', 'Prueba de clave API fallida'),
('es', 'settings.for_translation', 'para auto-traducción'),
('es', 'settings.get_key_at', 'Obtenga su clave API en'),
('es', 'settings.key_saved', 'Clave API guardada exitosamente'),
('es', 'settings.keys', 'claves'),
('es', 'settings.language', 'Idioma'),
('es', 'settings.min_6_chars', 'Mínimo 6 caracteres'),
('es', 'settings.new_password', 'Nueva contraseña'),
('es', 'settings.no_api_key', 'No hay clave API configurada. La auto-traducción no funcionará.'),
('es', 'settings.profile', 'Perfil'),
('es', 'settings.progress', 'Progreso'),
('es', 'settings.skip_validation', 'Omitir validación (guardar sin probar)'),
('es', 'settings.translation_complete', 'Traducción completada'),
('es', 'settings.translation_status', 'Estado de traducción'),
('es', 'settings.translations', 'Traducciones'),
('es', 'settings.users', 'Usuarios'),
('es', 'status.active', 'Activo'),
('es', 'status.deploying', 'Implementando'),
('es', 'status.disabled', 'Deshabilitado'),
('es', 'status.error', 'Error'),
('es', 'status.inactive', 'Inactivo'),
('es', 'users.add_user', 'Agregar usuario'),
('es', 'users.administrator', 'Administrador'),
('es', 'users.all_users', 'Todos los usuarios'),
('es', 'users.created', 'Creado'),
('es', 'users.delete_confirm', '¿Eliminar {0}?'),
('es', 'users.role', 'Rol'),
('es', 'users.role_admin', 'Administrador'),
('es', 'users.role_user', 'Usuario'),
('es', 'servers.import_from_panel', 'Importar desde panel existente'),
('es', 'servers.select_panel_type', 'Seleccione tipo de panel'),
('es', 'servers.panel_type_wgeasy', 'wg-easy'),
('es', 'servers.panel_type_3xui', '3x-ui'),
('es', 'servers.upload_backup_file', 'Subir archivo de respaldo (JSON)'),
('es', 'servers.import_in_progress', 'Importación en progreso...'),
('es', 'servers.import_success', 'Se importaron {0} clientes correctamente'),
('es', 'servers.import_failed', 'Error de importación'),
('es', 'servers.import_partial', 'Importados {0} de {1} clientes'),
('es', 'servers.import_history', 'Historial de importación')
ON DUPLICATE KEY UPDATE translation_value=VALUES(translation_value);