Add multilingual support with translations for German, Russian, French, and Chinese
Added time limits and backup functions for servers
This commit is contained in:
@@ -0,0 +1,131 @@
|
||||
-- Spanish translations
|
||||
-- This migration adds Spanish 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.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', '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')
|
||||
ON DUPLICATE KEY UPDATE translation_value=VALUES(translation_value);
|
||||
Reference in New Issue
Block a user