e65111a7f4
Permisos (superadmin, viewer, busqueda, tareas recurrentes), bootstrap atomico, revocacion de JWT por version de sesion (028), control optimista de edicion (029), logo sin SVG + CSP, ingesta endurecida, correos escapados, borradores, paginacion de proyectos, accesibilidad de dialogos/controles e i18n. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1021 lines
48 KiB
JavaScript
1021 lines
48 KiB
JavaScript
export const messages = {
|
|
'es-EC': {
|
|
appName: 'LinkedCorp Proyectos',
|
|
nav_dashboard: 'Panel',
|
|
nav_projects: 'Proyectos',
|
|
nav_organization: 'Organizacion',
|
|
nav_config: 'Configuracion',
|
|
login_title: 'Iniciar sesion',
|
|
login_email: 'Correo',
|
|
login_password: 'Clave',
|
|
login_submit: 'Entrar',
|
|
login_error: 'Credenciales invalidas',
|
|
login_forgot_password: '¿Olvidaste tu contraseña?',
|
|
login_create_account: 'Crear cuenta',
|
|
logout: 'Cerrar sesion',
|
|
|
|
register_title: 'Crear cuenta',
|
|
register_name: 'Nombre completo',
|
|
register_password_confirm: 'Confirmar clave',
|
|
register_password_mismatch: 'Las claves no coinciden',
|
|
register_password_short: 'La clave debe tener al menos 8 caracteres',
|
|
register_submit: 'Registrarme',
|
|
register_success: 'Cuenta creada. Revisa tu correo para confirmarla; luego un administrador debe aprobarla antes de que puedas entrar.',
|
|
register_back_to_login: 'Volver a iniciar sesion',
|
|
verify_email_title: 'Verificar correo',
|
|
verify_email_success: 'Correo confirmado. Tu cuenta esta pendiente de aprobacion por un administrador.',
|
|
verify_email_missing_token: 'Enlace invalido: falta el token de verificacion.',
|
|
accept_invite_title: 'Completar registro',
|
|
accept_invite_hint: 'Te invitaron a un proyecto. Elige tu nombre y una clave para crear tu cuenta.',
|
|
accept_invite_submit: 'Crear mi cuenta',
|
|
accept_invite_missing_token: 'Enlace invalido: falta el token de invitacion.',
|
|
forgot_password_title: 'Recuperar clave',
|
|
forgot_password_submit: 'Enviar instrucciones',
|
|
forgot_password_sent: 'Si el correo existe, te enviamos instrucciones para recuperar tu clave.',
|
|
reset_password_title: 'Elegir nueva clave',
|
|
reset_password_new: 'Clave nueva',
|
|
reset_password_submit: 'Guardar clave',
|
|
reset_password_success: 'Clave actualizada. Redirigiendo a iniciar sesion...',
|
|
change_password_title: 'Cambiar clave',
|
|
change_password_current: 'Clave actual',
|
|
change_password_success: 'Clave actualizada correctamente.',
|
|
|
|
user_status_pending_verification: 'Pendiente de verificar correo',
|
|
user_status_pending_approval: 'Pendiente de aprobacion',
|
|
user_status_active: 'Activo',
|
|
user_status_invited: 'Invitacion pendiente',
|
|
user_approve: 'Aprobar',
|
|
user_reject: 'Rechazar',
|
|
user_approve_title: 'Aprobar usuario',
|
|
user_reject_confirm_msg: '¿Seguro que deseas rechazar esta solicitud de registro? Se eliminara permanentemente.',
|
|
user_resend: 'Reenviar correo',
|
|
user_resend_sent: 'Correo reenviado',
|
|
|
|
config_company: 'Empresa',
|
|
company_name: 'Nombre de la empresa',
|
|
company_logo: 'Logo',
|
|
company_logo_hint: 'PNG, JPG o WEBP. Se usa en el menu lateral y en las pantallas de acceso.',
|
|
company_logo_none: 'Sin logo',
|
|
company_logo_choose: 'Elegir imagen',
|
|
|
|
config_smtp: 'Correo (SMTP)',
|
|
config_smtp_superadmin_only: 'Solo el superadministrador puede configurar el correo del sistema.',
|
|
smtp_host: 'Servidor (host)',
|
|
smtp_port: 'Puerto',
|
|
smtp_user: 'Usuario',
|
|
smtp_from: 'Remitente',
|
|
smtp_pass: 'Clave',
|
|
smtp_pass_configured_hint: 'Configurada — dejar en blanco para no cambiarla',
|
|
smtp_not_configured: 'Sin configurar: los correos se registran en el log del servidor (modo dev), no se envian de verdad.',
|
|
smtp_test_title: 'Probar configuracion',
|
|
smtp_test_hint: 'Envia un correo de verdad con los datos de arriba (guardados o no) para confirmar que funcionan antes de confiar en ellos.',
|
|
smtp_test_to: 'Enviar prueba a',
|
|
smtp_test_send: 'Enviar prueba',
|
|
smtp_test_sending: 'Enviando...',
|
|
smtp_test_success: 'Correo de prueba enviado correctamente a',
|
|
|
|
config_updater: 'Actualizaciones',
|
|
updater_check: 'Buscar actualizaciones',
|
|
updater_current_version: 'Versión instalada:',
|
|
updater_up_to_date: 'Estás en la última versión disponible.',
|
|
updater_available: 'Actualización disponible',
|
|
updater_restart_required: 'Esta actualización requiere reiniciar el sistema — coordina con tu administrador antes de aplicarla.',
|
|
updater_has_migrations: 'Incluye cambios en la base de datos (migraciones nuevas).',
|
|
updater_criticality_alta: 'Alta',
|
|
updater_criticality_media: 'Media',
|
|
updater_criticality_baja: 'Baja',
|
|
updater_rollback_hint: 'Antes de actualizar, respalda la base de datos. Si algo sale mal, restaura ese respaldo y vuelve al commit anterior a esta actualización en el historial de Gitea.',
|
|
updater_apply: 'Actualizar',
|
|
updater_applying: 'Actualizando…',
|
|
updater_apply_confirm_title: 'Aplicar actualización',
|
|
updater_apply_confirm_msg: 'Se va a respaldar la base de datos, descargar el código nuevo, aplicar migraciones si las hay, y reiniciar el sistema. Puede tardar unos minutos y la app quedará momentáneamente fuera de servicio. Vas de',
|
|
updater_apply_confirm_ok: 'Sí, actualizar',
|
|
updater_apply_started: 'Actualización iniciada. El sistema se reiniciará en unos minutos.',
|
|
updater_applying_hint: 'Actualización en curso — no cierres esta pestaña. El sistema se reiniciará solo al terminar.',
|
|
updater_apply_timeout: 'La actualización está tardando más de lo esperado. Revisa el estado en unos minutos o verifica el servidor.',
|
|
updater_apply_not_configured: 'La auto-actualización no está habilitada en este servidor. Pide a tu administrador que aplique esta actualización por SSH.',
|
|
updater_login_popup_title: 'Hay una actualización pendiente',
|
|
updater_login_popup_msg: 'El sistema tiene una versión nueva disponible:',
|
|
updater_login_popup_go: 'Ver actualizaciones',
|
|
|
|
config_error_logs: 'Errores del sistema',
|
|
error_logs_clear: 'Limpiar registro',
|
|
error_logs_clear_confirm_msg: '¿Seguro que deseas borrar todo el historial de errores registrados? No se puede deshacer.',
|
|
error_logs_empty: 'No hay errores registrados.',
|
|
error_logs_source: 'Origen',
|
|
error_logs_severity: 'Severidad',
|
|
error_logs_severity_alta: 'Alta',
|
|
error_logs_severity_media: 'Media',
|
|
error_logs_severity_baja: 'Baja',
|
|
password_show: 'Mostrar clave',
|
|
password_hide: 'Ocultar clave',
|
|
common_new: 'Nuevo',
|
|
common_edit: 'Editar',
|
|
common_save: 'Guardar',
|
|
common_cancel: 'Cancelar',
|
|
common_accept: 'Aceptar',
|
|
common_delete: 'Eliminar',
|
|
common_close: 'Cerrar',
|
|
common_search: 'Buscar...',
|
|
common_select: 'Seleccionar',
|
|
common_actions: 'Acciones',
|
|
common_search_no_results: 'Sin resultados',
|
|
common_actions: 'Acciones',
|
|
common_view: 'Ver',
|
|
common_yes: 'Si',
|
|
common_no: 'No',
|
|
common_or: 'o',
|
|
common_loading: 'Cargando...',
|
|
common_empty: 'No hay datos para mostrar',
|
|
common_confirm_delete_title: 'Confirmar eliminacion',
|
|
common_confirm_delete_msg: '¿Seguro que deseas eliminar este elemento? Esta accion no se puede deshacer.',
|
|
common_saved: 'Cambios guardados',
|
|
common_error: 'Ocurrio un error',
|
|
common_name: 'Nombre',
|
|
common_description: 'Descripcion',
|
|
common_status: 'Estado',
|
|
common_priority: 'Prioridad',
|
|
common_responsible: 'Responsable',
|
|
common_department: 'Departamento',
|
|
common_active: 'Activo',
|
|
common_inactive: 'Inactivo',
|
|
common_all: 'Todos',
|
|
theme_light: 'Claro',
|
|
theme_dark: 'Oscuro',
|
|
lang_es: 'Espanol',
|
|
lang_en: 'Ingles',
|
|
button_mode_icon_text: 'Icono + texto',
|
|
button_mode_icon: 'Solo icono',
|
|
button_mode_text: 'Solo texto',
|
|
|
|
dashboard_title: 'Panel principal',
|
|
dashboard_active_projects: 'Proyectos activos',
|
|
dashboard_overdue_projects: 'Proyectos atrasados',
|
|
dashboard_due_soon_projects: 'Proximos a vencer',
|
|
dashboard_pending_activities: 'Actividades pendientes',
|
|
dashboard_overdue_activities: 'Actividades vencidas',
|
|
dashboard_today_activities: 'Para hoy',
|
|
dashboard_average_progress: 'Avance promedio',
|
|
common_of: 'de',
|
|
draft_leave_title: 'Cambios sin guardar',
|
|
draft_leave_msg: 'Vas a salir de una sección con cambios que todavía no guardaste:',
|
|
draft_leave_hint: 'Si los dejas pendientes, se conservan en este navegador y se reabre la edición al volver.',
|
|
draft_discard: 'Descartar cambios',
|
|
draft_keep_pending: 'Dejar pendiente',
|
|
draft_keep_editing: 'Seguir editando',
|
|
draft_pending_mark: 'Cambios sin guardar',
|
|
draft_field_modified: 'modificado',
|
|
draft_restored_msg: 'Se recuperaron cambios que no habías guardado. Revisa y guarda, o descártalos.',
|
|
draft_conflict_title: 'El registro cambió',
|
|
draft_conflict_reload_msg: 'El registro cambió en el servidor. Recarga para revisar la versión actual antes de guardar. Tus cambios pendientes se conservarán.',
|
|
draft_conflict_reload: 'Descartar y recargar',
|
|
draft_conflict_msg: 'Este registro cambió en el servidor desde que empezaste a editarlo. Si guardas tus cambios pendientes, reemplazarás esos cambios.',
|
|
draft_conflict_save_msg: 'Este registro cambió en el servidor desde que empezaste a editarlo (otra persona u otra pestaña). ¿Quieres sobrescribirlo con tus cambios?',
|
|
draft_conflict_overwrite: 'Sobrescribir',
|
|
draft_keep_mine: 'Mantener mis cambios',
|
|
draft_use_server: 'Descartar mis cambios',
|
|
session_expired_login_msg: 'Tu sesión venció. Inicia sesión otra vez para volver a donde estabas; los cambios sin guardar se conservaron.',
|
|
dashboard_cards: 'Tarjetas',
|
|
dashboard_no_cards: 'No hay tarjetas seleccionadas. Elige cuáles mostrar en "Tarjetas".',
|
|
dashboard_projects_by_status: 'Proyectos por estado',
|
|
|
|
projects_title: 'Proyectos',
|
|
project_page_range: 'Mostrando', project_page_of: 'de', project_page_previous: 'Anterior', project_page_next: 'Siguiente',
|
|
draft_conflict_check_failed: 'No se pudo comprobar la versión actual. Intenta de nuevo.',
|
|
project_code: 'Codigo',
|
|
project_new: 'Nuevo proyecto',
|
|
project_objective: 'Objetivo',
|
|
project_type: 'Tipo de proyecto',
|
|
project_owner: 'Responsable',
|
|
project_start_date: 'Fecha de inicio',
|
|
project_estimated_end_date: 'Fin estimado',
|
|
project_actual_end_date: 'Fin real',
|
|
project_progress: 'Avance',
|
|
project_shared_with: 'Compartido con',
|
|
project_requesting_department: 'Departamento solicitante',
|
|
project_responsible_department: 'Departamento responsable',
|
|
project_risk: 'Riesgo',
|
|
project_notes: 'Observaciones',
|
|
project_members: 'Miembros',
|
|
project_members_owner_only_hint: 'Solo el dueño del proyecto puede compartirlo y cambiar permisos.',
|
|
project_add_member: 'Compartir proyecto',
|
|
project_add_member_role: 'Permiso',
|
|
project_role_owner: 'Dueño',
|
|
project_role_read: 'Lectura',
|
|
project_role_write: 'Escritura',
|
|
project_invite_email: 'Invitar por correo',
|
|
project_invite_email_hint: 'Si el correo no pertenece a nadie todavia, se le manda un enlace para que complete su registro y se una al proyecto.',
|
|
project_invite_sent: 'Invitacion enviada por correo',
|
|
project_created_at: 'Creado',
|
|
project_updated_at: 'Actualizado',
|
|
project_deleted_at: 'Eliminado',
|
|
project_filter_due_soon: 'Solo próximos a vencer (7 días)',
|
|
project_filter_progress: 'Avance',
|
|
project_filter_progress_hide: 'Ocultar 100%',
|
|
project_filter_progress_only: 'Solo 100%',
|
|
|
|
nav_recurring_tasks: 'Tareas recurrentes',
|
|
nav_notes: 'Notas',
|
|
nav_passwords: 'Contraseñas',
|
|
nav_devices: 'Equipos',
|
|
eq_installer_title: 'Instalador para Windows',
|
|
eq_installer_row_hint: 'También puedes descargarlo con el ícono de cada token de la lista.',
|
|
eq_token_no_secret: 'Token anterior: no se puede recuperar, genera uno nuevo',
|
|
eq_installer_hint: 'Descarga un instalador (.bat) con el servidor y el token ya configurados: se ejecuta con doble clic en el equipo, sin configurar nada más.',
|
|
eq_installer_token: 'Token (se llena solo al generar uno)',
|
|
eq_installer_tag: 'Etiqueta opcional (ej. Contabilidad)',
|
|
eq_installer_download: 'Descargar instalador',
|
|
eq_installer_note: 'El .bat contiene el token: compártelo solo con quien instale. Descarga el agente oficial de GitHub; si el equipo no tiene internet, copia el .msi junto al .bat.',
|
|
eq_tab_share: 'Compartir',
|
|
eq_share_title: 'Compartir el menú Equipos',
|
|
eq_share_hint: 'Da acceso de solo lectura (Resumen, Equipos y Software) a usuarios que por su rol no lo ven. No podrán editar, ver agentes ni compartir.',
|
|
eq_share_pick: 'Elegir usuario...',
|
|
eq_share_add: 'Dar acceso',
|
|
eq_share_empty: 'Aún no has compartido Equipos con nadie.',
|
|
eq_share_role: 'Rol',
|
|
eq_share_since: 'Acceso desde',
|
|
eq_share_remove: 'Quitar acceso',
|
|
eq_share_remove_title: 'Quitar acceso a Equipos',
|
|
eq_share_remove_msg: 'dejará de ver el menú Equipos.',
|
|
eq_tab_users: 'Usuarios',
|
|
eq_users_session: 'Con sesión iniciada',
|
|
eq_users_local_count: 'Usuarios locales (total)',
|
|
eq_groups_local_count: 'Grupos locales (total)',
|
|
eq_users_local: 'Usuarios locales de Windows',
|
|
eq_groups_local: 'Grupos locales',
|
|
eq_users_hint: 'Solo cuentas locales del equipo: no incluye usuarios de dominio ni de Microsoft 365, e incluye cuentas de sistema o de programas. Los grupos no indican a qué usuario pertenecen.',
|
|
eq_tab_summary: 'Resumen',
|
|
eq_show_components: 'Mostrar actualizaciones, drivers y componentes del sistema',
|
|
eq_tab_devices: 'Equipos',
|
|
eq_tab_software_all: 'Software',
|
|
eq_tab_agents: 'Agentes',
|
|
eq_tab_general: 'General',
|
|
eq_tab_hardware: 'Hardware',
|
|
eq_tab_network: 'Red',
|
|
eq_tab_software: 'Software',
|
|
eq_tab_history: 'Historial',
|
|
eq_detail: 'Detalle del equipo',
|
|
eq_empty: 'Aún no hay equipos. Instala el agente GLPI en un equipo apuntando a este sistema (pestaña Agentes).',
|
|
eq_hostname: 'Nombre',
|
|
eq_kind: 'Tipo',
|
|
eq_kind_desktop: 'PC de escritorio',
|
|
eq_kind_laptop: 'Portátil',
|
|
eq_kind_server: 'Servidor',
|
|
eq_kind_virtual: 'Máquina virtual',
|
|
eq_kind_printer: 'Impresora',
|
|
eq_kind_network: 'Equipo de red',
|
|
eq_kind_other: 'Otro',
|
|
eq_status_active: 'Activo',
|
|
eq_status_retired: 'De baja',
|
|
eq_manufacturer_model: 'Marca y modelo',
|
|
eq_manufacturer: 'Fabricante',
|
|
eq_model: 'Modelo',
|
|
eq_serial: 'N.º de serie',
|
|
eq_os: 'Sistema operativo',
|
|
eq_domain: 'Dominio',
|
|
eq_last_user: 'Último usuario',
|
|
eq_ip: 'IP',
|
|
eq_first_seen: 'Primer reporte',
|
|
eq_last_seen: 'Último reporte',
|
|
eq_agent: 'Versión del agente',
|
|
eq_assigned_to: 'Asignado a',
|
|
eq_notes: 'Notas',
|
|
eq_cpu: 'Procesador',
|
|
eq_ram: 'Memoria RAM',
|
|
eq_disk_total: 'Almacenamiento',
|
|
eq_disk_max_used: 'volumen más lleno',
|
|
eq_memories: 'Módulos de memoria',
|
|
eq_disks: 'Discos físicos',
|
|
eq_volumes: 'Volúmenes',
|
|
eq_monitors: 'Monitores',
|
|
eq_slot: 'Ranura',
|
|
eq_capacity: 'Capacidad',
|
|
eq_type: 'Tipo',
|
|
eq_speed: 'Velocidad',
|
|
eq_mount: 'Unidad',
|
|
eq_fs: 'Sistema de archivos',
|
|
eq_free: 'Libre',
|
|
eq_adapter: 'Adaptador',
|
|
eq_mask: 'Máscara',
|
|
eq_gateway: 'Puerta de enlace',
|
|
eq_version: 'Versión',
|
|
eq_versions: 'Versiones',
|
|
eq_publisher: 'Editor',
|
|
eq_installed_on: 'Equipos',
|
|
eq_when: 'Fecha',
|
|
eq_change: 'Cambio',
|
|
eq_field: 'Campo',
|
|
eq_before: 'Antes',
|
|
eq_after: 'Después',
|
|
eq_history_empty: 'Sin cambios registrados entre reportes.',
|
|
eq_change_field: 'Dato modificado',
|
|
eq_change_disk_added: 'Disco agregado',
|
|
eq_change_disk_removed: 'Disco retirado',
|
|
eq_change_software_installed: 'Software instalado',
|
|
eq_change_software_removed: 'Software desinstalado',
|
|
eq_kpi_total: 'Equipos activos',
|
|
eq_kpi_stale: 'Sin reportar (+7 días)',
|
|
eq_kpi_disk_full: 'Disco ≥ 90% lleno',
|
|
eq_kpi_low_ram: 'RAM menor a 4 GB',
|
|
eq_by_os: 'Por sistema operativo',
|
|
eq_by_kind: 'Por tipo',
|
|
eq_top_software: 'Software más instalado',
|
|
eq_agent_setup: 'Conectar un agente GLPI',
|
|
eq_agent_setup_hint: 'En el archivo de configuración del agente (o en el instalador) usa esta dirección como servidor:',
|
|
eq_agent_setup_auth: 'Autenticación: usuario cualquiera y, como contraseña, el token generado abajo.',
|
|
eq_token_label: 'Etiqueta del token (ej. Oficina central)',
|
|
eq_token_new: 'Generar token',
|
|
eq_token_created: 'Token generado para',
|
|
eq_token_once: 'Cópialo ahora: no se vuelve a mostrar. En el sistema solo queda su huella cifrada.',
|
|
eq_token_last_used: 'Último uso',
|
|
eq_token_created_by: 'Creado por',
|
|
eq_token_enable: 'Activar',
|
|
eq_token_disable: 'Desactivar',
|
|
eq_token_delete_msg: 'Los agentes que usen este token dejarán de poder reportar. ¿Eliminarlo?',
|
|
eq_copied: 'Copiado',
|
|
vault_pin_label: 'PIN (4 números)',
|
|
vault_pin_confirm_label: 'Confirmar PIN',
|
|
vault_pin_current_label: 'PIN actual',
|
|
vault_pin_invalid: 'El PIN debe ser de 4 números',
|
|
vault_pin_mismatch: 'Los PIN no coinciden',
|
|
vault_create_pin_title: 'Crear PIN de acceso',
|
|
vault_create_pin_hint: 'Este PIN protege el acceso a tus contraseñas guardadas. Vas a necesitarlo cada vez que entres a esta sección.',
|
|
vault_create_pin_submit: 'Crear PIN y entrar',
|
|
vault_enter_pin_title: 'Ingresa tu PIN',
|
|
vault_unlock: 'Desbloquear',
|
|
vault_forgot_pin: '¿Olvidaste tu PIN?',
|
|
vault_forgot_pin_sent: 'Te enviamos un correo para restablecer tu PIN. Tus contraseñas guardadas no se ven afectadas.',
|
|
vault_change_pin: 'Cambiar PIN',
|
|
vault_reset_pin_title: 'Restablecer PIN',
|
|
vault_reset_pin_submit: 'Guardar PIN nuevo',
|
|
vault_reset_pin_success: 'Tu PIN fue actualizado. Tus contraseñas guardadas siguen intactas.',
|
|
vault_new_entry: 'Nueva credencial',
|
|
vault_field_title: 'Nombre',
|
|
vault_field_url: 'Enlace',
|
|
vault_field_username: 'Usuario',
|
|
vault_field_password: 'Contraseña',
|
|
vault_field_notes: 'Notas',
|
|
vault_field_icon: 'Ícono',
|
|
vault_icon_auto: 'Automático (inicial del nombre)',
|
|
vault_icon_more: 'Más íconos (marcas conocidas)',
|
|
vault_icon_less: 'Ocultar íconos de marca',
|
|
vault_password_unchanged_hint: 'Dejar en blanco para no cambiarla',
|
|
vault_reveal: 'Revelar',
|
|
vault_copy: 'Copiar',
|
|
vault_copied: 'Copiado al portapapeles',
|
|
vault_generate: 'Generar',
|
|
vault_countdown_hint: 'Tiempo para el cierre automático por inactividad. Se reinicia con cada tecla o clic.',
|
|
vault_auto_lock_notice: 'Saliste de Contraseñas por seguridad — ingresa tu PIN de nuevo para volver a entrar.',
|
|
vault_group_new: 'Nuevo grupo',
|
|
vault_group_name: 'Nombre del grupo',
|
|
vault_group_none: 'Sin grupo',
|
|
vault_group_back: 'Volver',
|
|
vault_group_entries_count: 'credencial(es)',
|
|
vault_field_group: 'Grupo',
|
|
vault_share_title: 'Compartir',
|
|
vault_share_add: 'Compartir con',
|
|
vault_share_placeholder: 'Elegir usuario',
|
|
vault_share_empty: 'No compartida con nadie.',
|
|
vault_share_group_action: 'Compartir grupo',
|
|
vault_share_group_hint_prefix: 'Comparte las ',
|
|
vault_share_group_hint_suffix: ' credenciales de este grupo, de solo lectura.',
|
|
vault_shared_by: 'Compartida por',
|
|
vault_destroy: 'Destruir',
|
|
vault_destroy_group_action: 'Destruir grupo',
|
|
vault_destroy_group_cascade_action: 'Destruir grupo y credenciales',
|
|
vault_confirm_destroy_title: 'Destrucción irreversible',
|
|
vault_confirm_destroy_entry_msg: 'Esta credencial se destruye para siempre. No se puede recuperar.',
|
|
vault_confirm_destroy_group_msg: 'Este grupo se destruye para siempre. Sus credenciales quedan sin grupo, no se borran.',
|
|
vault_confirm_destroy_group_cascade_prefix: 'Se destruyen el grupo y sus ',
|
|
vault_confirm_destroy_group_cascade_suffix: ' credenciales, para siempre. No se puede recuperar nada.',
|
|
notes_title: 'Notas',
|
|
notes_placeholder: 'Escribe un apunte rápido...',
|
|
notes_empty: 'No tienes notas todavía.',
|
|
notes_updated: 'Editado',
|
|
notes_new: 'Nueva nota',
|
|
notes_share_title: 'Compartir',
|
|
notes_share_add: 'Compartir con',
|
|
notes_share_placeholder: 'Elegir usuario',
|
|
notes_share_empty: 'No compartida con nadie.',
|
|
notes_shared_by: 'Compartida por',
|
|
recurring_task_new: 'Nueva tarea recurrente',
|
|
recurring_task_project: 'Proyecto de origen',
|
|
recurring_task_every: 'Cada',
|
|
recurring_task_interval: 'Periodicidad',
|
|
recurring_task_interval_unit: 'Unidad',
|
|
recurring_task_unit_days: 'días',
|
|
recurring_task_unit_months: 'meses',
|
|
recurring_task_unit_years: 'años',
|
|
recurring_task_next_due: 'Próximo vencimiento',
|
|
recurring_task_reminder: 'Recordatorio',
|
|
recurring_task_reminder_days: 'Avisar con (días de anticipación)',
|
|
recurring_task_reminder_hour: 'Hora del recordatorio',
|
|
recurring_task_active: 'Activa',
|
|
recurring_task_end_date: 'Hasta',
|
|
recurring_task_unlimited: 'Indefinida',
|
|
recurring_task_unlimited_hint: 'Vacío = se repite sin fin. Al pasar esta fecha, la tarea se desactiva sola.',
|
|
recurring_task_complete_cycle: 'Completar ciclo',
|
|
recurring_task_complete_confirm: '¿Confirmas que ya completaste este ciclo? Se calcula el próximo vencimiento sumando la periodicidad configurada.',
|
|
recurring_task_promote: 'Convertir en recurrente',
|
|
recurring_task_promote_title: 'Convertir en tarea recurrente',
|
|
recurring_task_promote_hint: 'La tarea original de la actividad no se borra. Se crea una tarea recurrente nueva, enlazada a este proyecto, que avisa por correo cuando se acerque cada vencimiento.',
|
|
project_delete_confirm_msg: '¿Seguro que deseas eliminar este proyecto? Se movera a la papelera y dejara de verse en el listado; un superadministrador puede restaurarlo o borrarlo definitivamente.',
|
|
project_trash: 'Papelera',
|
|
project_trash_title: 'Papelera de proyectos',
|
|
project_trash_back: 'Volver a proyectos',
|
|
project_trash_empty_hint: 'Los proyectos eliminados aparecen aqui hasta que se restauran o se borran definitivamente.',
|
|
common_restore: 'Restaurar',
|
|
activities_trash: 'Papelera de actividades',
|
|
activities_trash_empty: 'No hay actividades eliminadas.',
|
|
tasks_trash: 'Papelera de tareas',
|
|
tasks_trash_empty: 'No hay tareas eliminadas.',
|
|
project_restore: 'Restaurar',
|
|
project_delete_permanent: 'Eliminar definitivamente',
|
|
project_delete_permanent_confirm_msg: 'Esta accion NO se puede deshacer: se borra el proyecto y todas sus actividades, comentarios y archivos adjuntos de forma permanente.',
|
|
risk_low: 'Bajo',
|
|
risk_medium: 'Medio',
|
|
risk_high: 'Alto',
|
|
|
|
tab_info: 'Info',
|
|
tab_members: 'Miembros',
|
|
tab_activities: 'Actividades',
|
|
tab_gantt: 'Gantt',
|
|
tab_calendar: 'Calendario',
|
|
tab_comments: 'Comentarios',
|
|
tab_documents: 'Documentos',
|
|
|
|
activity_new: 'Nueva actividad',
|
|
activity_code: 'Codigo',
|
|
activity_start_date: 'Fecha inicio',
|
|
activity_due_date: 'Fecha limite',
|
|
activity_updated_at: 'Actualizado',
|
|
activity_actual_end_date: 'Fecha real de fin',
|
|
activity_progress: 'Avance',
|
|
activity_milestone: 'Es hito',
|
|
activity_estimated_hours: 'Horas estimadas',
|
|
activity_dependencies: 'Dependencias',
|
|
activity_move: 'Mover a otro proyecto',
|
|
activity_move_title: 'Mover actividad',
|
|
activity_move_target: 'Proyecto destino',
|
|
activity_move_confirm_msg: 'Se moverá la actividad "{activity}" (junto con sus tareas) al proyecto "{project}". ¿Deseas continuar?',
|
|
activity_convert: 'Convertir en proyecto',
|
|
activity_convert_title: 'Convertir actividad en proyecto',
|
|
activity_convert_hint: 'Una tarea siempre necesita una actividad contenedora — se crea un proyecto nuevo y, dentro, una actividad que recibirá las tareas (y comentarios/documentos) de esta actividad.',
|
|
activity_convert_project_name: 'Nombre del proyecto nuevo',
|
|
activity_convert_activity_name: 'Nombre de la actividad (contendrá las tareas)',
|
|
activity_convert_confirm_msg: 'Se convertirá la actividad "{activity}" en el proyecto nuevo "{project}", con una actividad "{newActivity}" que tendrá sus tareas. ¿Deseas continuar?',
|
|
activity_add_dependency: 'Agregar dependencia',
|
|
activity_depends_on: 'Depende de',
|
|
activity_no_dependency_options: 'No hay otras actividades en este proyecto para agregar como dependencia.',
|
|
tasks_title: 'Tareas',
|
|
task_new: 'Nueva tarea',
|
|
task_done: 'Hecha',
|
|
|
|
due_on_time: 'En tiempo',
|
|
due_warning: 'Proximo a vencer',
|
|
due_today: 'Vence hoy',
|
|
due_overdue: 'Vencido',
|
|
|
|
org_departments: 'Departamentos',
|
|
org_users: 'Usuarios',
|
|
department_new: 'Nuevo departamento',
|
|
department_parent: 'Departamento padre',
|
|
user_new: 'Nuevo usuario',
|
|
user_email: 'Correo',
|
|
user_role: 'Rol',
|
|
user_position: 'Cargo',
|
|
user_password: 'Clave inicial',
|
|
|
|
config_title: 'Configuracion',
|
|
config_appearance: 'Apariencia',
|
|
config_catalogs: 'Catalogos',
|
|
config_priorities: 'Prioridades',
|
|
config_project_statuses: 'Estados de proyecto',
|
|
config_activity_statuses: 'Estados de actividad',
|
|
config_project_types: 'Tipos de proyecto',
|
|
|
|
comments_title: 'Comentarios',
|
|
comment_placeholder: 'Escribe un comentario...',
|
|
comment_send: 'Enviar',
|
|
|
|
documents_title: 'Documentos adjuntos',
|
|
document_upload: 'Subir archivo',
|
|
document_view: 'Ver',
|
|
document_view_error: 'No se pudo cargar el contenido del archivo.',
|
|
document_download: 'Descargar',
|
|
|
|
notifications_title: 'Notificaciones',
|
|
notifications_empty: 'Sin notificaciones',
|
|
notifications_mark_all_read: 'Marcar todas como leidas',
|
|
},
|
|
'en-US': {
|
|
appName: 'LinkedCorp Projects',
|
|
nav_dashboard: 'Dashboard',
|
|
nav_projects: 'Projects',
|
|
nav_organization: 'Organization',
|
|
nav_config: 'Settings',
|
|
login_title: 'Sign in',
|
|
login_email: 'Email',
|
|
login_password: 'Password',
|
|
login_submit: 'Sign in',
|
|
login_error: 'Invalid credentials',
|
|
login_forgot_password: 'Forgot your password?',
|
|
login_create_account: 'Create account',
|
|
logout: 'Sign out',
|
|
|
|
register_title: 'Create account',
|
|
register_name: 'Full name',
|
|
register_password_confirm: 'Confirm password',
|
|
register_password_mismatch: 'Passwords do not match',
|
|
register_password_short: 'Password must be at least 8 characters',
|
|
register_submit: 'Sign up',
|
|
register_success: 'Account created. Check your email to confirm it; an administrator must approve it before you can sign in.',
|
|
register_back_to_login: 'Back to sign in',
|
|
verify_email_title: 'Verify email',
|
|
verify_email_success: 'Email confirmed. Your account is pending administrator approval.',
|
|
verify_email_missing_token: 'Invalid link: missing verification token.',
|
|
accept_invite_title: 'Complete your registration',
|
|
accept_invite_hint: 'You were invited to a project. Choose your name and a password to create your account.',
|
|
accept_invite_submit: 'Create my account',
|
|
accept_invite_missing_token: 'Invalid link: missing invite token.',
|
|
forgot_password_title: 'Recover password',
|
|
forgot_password_submit: 'Send instructions',
|
|
forgot_password_sent: 'If the email exists, we sent instructions to recover your password.',
|
|
reset_password_title: 'Choose a new password',
|
|
reset_password_new: 'New password',
|
|
reset_password_submit: 'Save password',
|
|
reset_password_success: 'Password updated. Redirecting to sign in...',
|
|
change_password_title: 'Change password',
|
|
change_password_current: 'Current password',
|
|
change_password_success: 'Password updated successfully.',
|
|
|
|
user_status_pending_verification: 'Pending email verification',
|
|
user_status_pending_approval: 'Pending approval',
|
|
user_status_active: 'Active',
|
|
user_status_invited: 'Invite pending',
|
|
user_approve: 'Approve',
|
|
user_reject: 'Reject',
|
|
user_approve_title: 'Approve user',
|
|
user_reject_confirm_msg: 'Are you sure you want to reject this registration request? It will be permanently deleted.',
|
|
user_resend: 'Resend email',
|
|
user_resend_sent: 'Email resent',
|
|
|
|
config_company: 'Company',
|
|
company_name: 'Company name',
|
|
company_logo: 'Logo',
|
|
company_logo_hint: 'PNG, JPG or WEBP. Used in the sidebar and on the sign-in screens.',
|
|
company_logo_none: 'No logo',
|
|
company_logo_choose: 'Choose image',
|
|
|
|
config_smtp: 'Email (SMTP)',
|
|
config_smtp_superadmin_only: 'Only the superadmin can configure the system email.',
|
|
smtp_host: 'Host',
|
|
smtp_port: 'Port',
|
|
smtp_user: 'User',
|
|
smtp_from: 'From',
|
|
smtp_pass: 'Password',
|
|
smtp_pass_configured_hint: 'Configured — leave blank to keep it unchanged',
|
|
smtp_not_configured: 'Not configured: emails are logged on the server (dev mode), not actually sent.',
|
|
smtp_test_title: 'Test configuration',
|
|
smtp_test_hint: 'Sends a real email with the settings above (saved or not) so you can confirm they work before trusting them.',
|
|
smtp_test_to: 'Send test to',
|
|
smtp_test_send: 'Send test',
|
|
smtp_test_sending: 'Sending...',
|
|
smtp_test_success: 'Test email sent successfully to',
|
|
|
|
config_updater: 'Updates',
|
|
updater_check: 'Check for updates',
|
|
updater_current_version: 'Installed version:',
|
|
updater_up_to_date: 'You are on the latest available version.',
|
|
updater_available: 'Update available',
|
|
updater_restart_required: 'This update requires restarting the system — coordinate with your administrator before applying it.',
|
|
updater_has_migrations: 'Includes database changes (new migrations).',
|
|
updater_criticality_alta: 'High',
|
|
updater_criticality_media: 'Medium',
|
|
updater_criticality_baja: 'Low',
|
|
updater_rollback_hint: 'Back up the database before updating. If something goes wrong, restore that backup and roll back to the commit before this update in the Gitea history.',
|
|
updater_apply: 'Update',
|
|
updater_applying: 'Updating…',
|
|
updater_apply_confirm_title: 'Apply update',
|
|
updater_apply_confirm_msg: 'This will back up the database, pull the new code, apply migrations if any, and restart the system. It may take a few minutes and the app will be briefly unavailable. Going from',
|
|
updater_apply_confirm_ok: 'Yes, update',
|
|
updater_apply_started: 'Update started. The system will restart in a few minutes.',
|
|
updater_applying_hint: 'Update in progress — do not close this tab. The system will restart on its own when done.',
|
|
updater_apply_timeout: 'The update is taking longer than expected. Check back in a few minutes or verify the server.',
|
|
updater_apply_not_configured: 'Auto-update is not enabled on this server. Ask your administrator to apply this update via SSH.',
|
|
updater_login_popup_title: 'There is a pending update',
|
|
updater_login_popup_msg: 'A new version of the system is available:',
|
|
updater_login_popup_go: 'View updates',
|
|
|
|
config_error_logs: 'System errors',
|
|
error_logs_clear: 'Clear log',
|
|
error_logs_clear_confirm_msg: 'Are you sure you want to delete the entire error log history? This cannot be undone.',
|
|
error_logs_empty: 'No errors logged.',
|
|
error_logs_source: 'Source',
|
|
error_logs_severity: 'Severity',
|
|
error_logs_severity_alta: 'High',
|
|
error_logs_severity_media: 'Medium',
|
|
error_logs_severity_baja: 'Low',
|
|
password_show: 'Show password',
|
|
password_hide: 'Hide password',
|
|
common_new: 'New',
|
|
common_edit: 'Edit',
|
|
common_save: 'Save',
|
|
common_cancel: 'Cancel',
|
|
common_accept: 'Accept',
|
|
common_delete: 'Delete',
|
|
common_close: 'Close',
|
|
common_search: 'Search...',
|
|
common_select: 'Select',
|
|
common_actions: 'Actions',
|
|
common_search_no_results: 'No results',
|
|
common_actions: 'Actions',
|
|
common_view: 'View',
|
|
common_yes: 'Yes',
|
|
common_no: 'No',
|
|
common_or: 'or',
|
|
common_loading: 'Loading...',
|
|
common_empty: 'No data to show',
|
|
common_confirm_delete_title: 'Confirm delete',
|
|
common_confirm_delete_msg: 'Are you sure you want to delete this item? This cannot be undone.',
|
|
common_saved: 'Changes saved',
|
|
common_error: 'An error occurred',
|
|
common_name: 'Name',
|
|
common_description: 'Description',
|
|
common_status: 'Status',
|
|
common_priority: 'Priority',
|
|
common_responsible: 'Owner',
|
|
common_department: 'Department',
|
|
common_active: 'Active',
|
|
common_inactive: 'Inactive',
|
|
common_all: 'All',
|
|
theme_light: 'Light',
|
|
theme_dark: 'Dark',
|
|
lang_es: 'Spanish',
|
|
lang_en: 'English',
|
|
button_mode_icon_text: 'Icon + text',
|
|
button_mode_icon: 'Icon only',
|
|
button_mode_text: 'Text only',
|
|
|
|
dashboard_title: 'Dashboard',
|
|
dashboard_active_projects: 'Active projects',
|
|
dashboard_overdue_projects: 'Overdue projects',
|
|
dashboard_due_soon_projects: 'Due soon',
|
|
dashboard_pending_activities: 'Pending activities',
|
|
dashboard_overdue_activities: 'Overdue activities',
|
|
dashboard_today_activities: 'Due today',
|
|
dashboard_average_progress: 'Average progress',
|
|
common_of: 'of',
|
|
draft_leave_title: 'Unsaved changes',
|
|
draft_leave_msg: 'You are leaving a section with changes you have not saved yet:',
|
|
draft_leave_hint: 'If you leave them pending, they are kept in this browser and editing reopens when you come back.',
|
|
draft_discard: 'Discard changes',
|
|
draft_keep_pending: 'Leave pending',
|
|
draft_keep_editing: 'Keep editing',
|
|
draft_pending_mark: 'Unsaved changes',
|
|
draft_field_modified: 'modified',
|
|
draft_restored_msg: 'Unsaved changes were recovered. Review and save them, or discard them.',
|
|
draft_conflict_title: 'The record changed',
|
|
draft_conflict_reload_msg: 'The record changed on the server. Reload to review the current version before saving. Your pending changes will be kept.',
|
|
draft_conflict_reload: 'Discard and reload',
|
|
draft_conflict_msg: 'This record changed on the server since you started editing it. Saving your pending changes will replace those changes.',
|
|
draft_conflict_save_msg: 'This record changed on the server since you started editing it (someone else or another tab). Do you want to overwrite it with your changes?',
|
|
draft_conflict_overwrite: 'Overwrite',
|
|
draft_keep_mine: 'Keep my changes',
|
|
draft_use_server: 'Discard my changes',
|
|
session_expired_login_msg: 'Your session expired. Sign in again to return where you were; unsaved changes were kept.',
|
|
dashboard_cards: 'Cards',
|
|
dashboard_no_cards: 'No cards selected. Choose which ones to show in "Cards".',
|
|
dashboard_projects_by_status: 'Projects by status',
|
|
|
|
projects_title: 'Projects',
|
|
project_page_range: 'Showing', project_page_of: 'of', project_page_previous: 'Previous', project_page_next: 'Next',
|
|
draft_conflict_check_failed: 'Could not check the current version. Try again.',
|
|
project_code: 'Code',
|
|
project_new: 'New project',
|
|
project_objective: 'Objective',
|
|
project_type: 'Project type',
|
|
project_owner: 'Owner',
|
|
project_start_date: 'Start date',
|
|
project_estimated_end_date: 'Estimated end',
|
|
project_actual_end_date: 'Actual end',
|
|
project_progress: 'Progress',
|
|
project_shared_with: 'Shared with',
|
|
project_requesting_department: 'Requesting department',
|
|
project_responsible_department: 'Responsible department',
|
|
project_risk: 'Risk',
|
|
project_notes: 'Notes',
|
|
project_members: 'Members',
|
|
project_members_owner_only_hint: 'Only the project owner can share it and change permissions.',
|
|
project_add_member: 'Share project',
|
|
project_add_member_role: 'Permission',
|
|
project_role_owner: 'Owner',
|
|
project_role_read: 'Read',
|
|
project_role_write: 'Write',
|
|
project_invite_email: 'Invite by email',
|
|
project_invite_email_hint: "If the email doesn't belong to anyone yet, they get a link to finish signing up and join the project.",
|
|
project_invite_sent: 'Invite sent by email',
|
|
project_created_at: 'Created',
|
|
project_updated_at: 'Updated',
|
|
project_deleted_at: 'Deleted',
|
|
project_filter_due_soon: 'Due soon only (7 days)',
|
|
project_filter_progress: 'Progress',
|
|
project_filter_progress_hide: 'Hide 100%',
|
|
project_filter_progress_only: 'Only 100%',
|
|
|
|
nav_recurring_tasks: 'Recurring tasks',
|
|
nav_notes: 'Notes',
|
|
nav_passwords: 'Passwords',
|
|
nav_devices: 'Devices',
|
|
eq_installer_title: 'Windows installer',
|
|
eq_installer_row_hint: 'You can also download it with the icon on each token in the list.',
|
|
eq_token_no_secret: 'Older token: cannot be recovered, generate a new one',
|
|
eq_installer_hint: 'Download an installer (.bat) with the server and token already set: double-click it on the machine, nothing else to configure.',
|
|
eq_installer_token: 'Token (filled in when you generate one)',
|
|
eq_installer_tag: 'Optional tag (e.g. Accounting)',
|
|
eq_installer_download: 'Download installer',
|
|
eq_installer_note: 'The .bat contains the token: share it only with whoever installs. It downloads the official agent from GitHub; if the machine has no internet, put the .msi next to the .bat.',
|
|
eq_tab_share: 'Share',
|
|
eq_share_title: 'Share the Devices menu',
|
|
eq_share_hint: 'Give read-only access (Summary, Devices and Software) to users whose role does not see it. They cannot edit, see agents or share.',
|
|
eq_share_pick: 'Pick a user...',
|
|
eq_share_add: 'Grant access',
|
|
eq_share_empty: 'You have not shared Devices with anyone yet.',
|
|
eq_share_role: 'Role',
|
|
eq_share_since: 'Access since',
|
|
eq_share_remove: 'Remove access',
|
|
eq_share_remove_title: 'Remove access to Devices',
|
|
eq_share_remove_msg: 'will no longer see the Devices menu.',
|
|
eq_tab_users: 'Users',
|
|
eq_users_session: 'Signed in',
|
|
eq_users_local_count: 'Local users (total)',
|
|
eq_groups_local_count: 'Local groups (total)',
|
|
eq_users_local: 'Windows local users',
|
|
eq_groups_local: 'Local groups',
|
|
eq_users_hint: 'Local accounts of the machine only: domain and Microsoft 365 users are not included, and system or application accounts are. Groups do not show which user belongs to them.',
|
|
eq_tab_summary: 'Summary',
|
|
eq_show_components: 'Show updates, drivers and system components',
|
|
eq_tab_devices: 'Devices',
|
|
eq_tab_software_all: 'Software',
|
|
eq_tab_agents: 'Agents',
|
|
eq_tab_general: 'General',
|
|
eq_tab_hardware: 'Hardware',
|
|
eq_tab_network: 'Network',
|
|
eq_tab_software: 'Software',
|
|
eq_tab_history: 'History',
|
|
eq_detail: 'Device detail',
|
|
eq_empty: 'No devices yet. Install the GLPI agent on a machine pointing to this system (Agents tab).',
|
|
eq_hostname: 'Name',
|
|
eq_kind: 'Type',
|
|
eq_kind_desktop: 'Desktop',
|
|
eq_kind_laptop: 'Laptop',
|
|
eq_kind_server: 'Server',
|
|
eq_kind_virtual: 'Virtual machine',
|
|
eq_kind_printer: 'Printer',
|
|
eq_kind_network: 'Network device',
|
|
eq_kind_other: 'Other',
|
|
eq_status_active: 'Active',
|
|
eq_status_retired: 'Retired',
|
|
eq_manufacturer_model: 'Make and model',
|
|
eq_manufacturer: 'Manufacturer',
|
|
eq_model: 'Model',
|
|
eq_serial: 'Serial no.',
|
|
eq_os: 'Operating system',
|
|
eq_domain: 'Domain',
|
|
eq_last_user: 'Last user',
|
|
eq_ip: 'IP',
|
|
eq_first_seen: 'First report',
|
|
eq_last_seen: 'Last report',
|
|
eq_agent: 'Agent version',
|
|
eq_assigned_to: 'Assigned to',
|
|
eq_notes: 'Notes',
|
|
eq_cpu: 'Processor',
|
|
eq_ram: 'RAM',
|
|
eq_disk_total: 'Storage',
|
|
eq_disk_max_used: 'fullest volume',
|
|
eq_memories: 'Memory modules',
|
|
eq_disks: 'Physical disks',
|
|
eq_volumes: 'Volumes',
|
|
eq_monitors: 'Monitors',
|
|
eq_slot: 'Slot',
|
|
eq_capacity: 'Capacity',
|
|
eq_type: 'Type',
|
|
eq_speed: 'Speed',
|
|
eq_mount: 'Drive',
|
|
eq_fs: 'File system',
|
|
eq_free: 'Free',
|
|
eq_adapter: 'Adapter',
|
|
eq_mask: 'Mask',
|
|
eq_gateway: 'Gateway',
|
|
eq_version: 'Version',
|
|
eq_versions: 'Versions',
|
|
eq_publisher: 'Publisher',
|
|
eq_installed_on: 'Devices',
|
|
eq_when: 'Date',
|
|
eq_change: 'Change',
|
|
eq_field: 'Field',
|
|
eq_before: 'Before',
|
|
eq_after: 'After',
|
|
eq_history_empty: 'No changes recorded between reports.',
|
|
eq_change_field: 'Field changed',
|
|
eq_change_disk_added: 'Disk added',
|
|
eq_change_disk_removed: 'Disk removed',
|
|
eq_change_software_installed: 'Software installed',
|
|
eq_change_software_removed: 'Software removed',
|
|
eq_kpi_total: 'Active devices',
|
|
eq_kpi_stale: 'Not reporting (+7 days)',
|
|
eq_kpi_disk_full: 'Disk ≥ 90% full',
|
|
eq_kpi_low_ram: 'RAM under 4 GB',
|
|
eq_by_os: 'By operating system',
|
|
eq_by_kind: 'By type',
|
|
eq_top_software: 'Most installed software',
|
|
eq_agent_setup: 'Connect a GLPI agent',
|
|
eq_agent_setup_hint: 'In the agent configuration file (or installer) use this address as the server:',
|
|
eq_agent_setup_auth: 'Authentication: any user name and, as password, the token generated below.',
|
|
eq_token_label: 'Token label (e.g. Head office)',
|
|
eq_token_new: 'Generate token',
|
|
eq_token_created: 'Token generated for',
|
|
eq_token_once: 'Copy it now: it is not shown again. Only its hash is stored.',
|
|
eq_token_last_used: 'Last used',
|
|
eq_token_created_by: 'Created by',
|
|
eq_token_enable: 'Enable',
|
|
eq_token_disable: 'Disable',
|
|
eq_token_delete_msg: 'Agents using this token will no longer be able to report. Delete it?',
|
|
eq_copied: 'Copied',
|
|
vault_pin_label: 'PIN (4 digits)',
|
|
vault_pin_confirm_label: 'Confirm PIN',
|
|
vault_pin_current_label: 'Current PIN',
|
|
vault_pin_invalid: 'The PIN must be 4 digits',
|
|
vault_pin_mismatch: 'The PINs don\'t match',
|
|
vault_create_pin_title: 'Create access PIN',
|
|
vault_create_pin_hint: 'This PIN protects access to your saved passwords. You\'ll need it every time you enter this section.',
|
|
vault_create_pin_submit: 'Create PIN and enter',
|
|
vault_enter_pin_title: 'Enter your PIN',
|
|
vault_unlock: 'Unlock',
|
|
vault_forgot_pin: 'Forgot your PIN?',
|
|
vault_forgot_pin_sent: 'We sent you an email to reset your PIN. Your saved passwords are not affected.',
|
|
vault_change_pin: 'Change PIN',
|
|
vault_reset_pin_title: 'Reset PIN',
|
|
vault_reset_pin_submit: 'Save new PIN',
|
|
vault_reset_pin_success: 'Your PIN was updated. Your saved passwords are still intact.',
|
|
vault_new_entry: 'New credential',
|
|
vault_field_title: 'Name',
|
|
vault_field_url: 'Link',
|
|
vault_field_username: 'Username',
|
|
vault_field_password: 'Password',
|
|
vault_field_notes: 'Notes',
|
|
vault_field_icon: 'Icon',
|
|
vault_icon_auto: 'Automatic (name initial)',
|
|
vault_icon_more: 'More icons (well-known brands)',
|
|
vault_icon_less: 'Hide brand icons',
|
|
vault_password_unchanged_hint: 'Leave blank to keep it unchanged',
|
|
vault_reveal: 'Reveal',
|
|
vault_copy: 'Copy',
|
|
vault_copied: 'Copied to clipboard',
|
|
vault_generate: 'Generate',
|
|
vault_countdown_hint: 'Time until automatic close for inactivity. It resets with every key press or click.',
|
|
vault_auto_lock_notice: 'You left Passwords for security — enter your PIN again to come back in.',
|
|
vault_group_new: 'New group',
|
|
vault_group_name: 'Group name',
|
|
vault_group_none: 'No group',
|
|
vault_group_back: 'Back',
|
|
vault_group_entries_count: 'credential(s)',
|
|
vault_field_group: 'Group',
|
|
vault_share_title: 'Share',
|
|
vault_share_add: 'Share with',
|
|
vault_share_placeholder: 'Choose a user',
|
|
vault_share_empty: 'Not shared with anyone.',
|
|
vault_share_group_action: 'Share group',
|
|
vault_share_group_hint_prefix: 'Shares the ',
|
|
vault_share_group_hint_suffix: ' credentials in this group, read-only.',
|
|
vault_shared_by: 'Shared by',
|
|
vault_destroy: 'Destroy',
|
|
vault_destroy_group_action: 'Destroy group',
|
|
vault_destroy_group_cascade_action: 'Destroy group and credentials',
|
|
vault_confirm_destroy_title: 'Irreversible destruction',
|
|
vault_confirm_destroy_entry_msg: 'This credential is destroyed forever. It cannot be recovered.',
|
|
vault_confirm_destroy_group_msg: 'This group is destroyed forever. Its credentials stay ungrouped, they are not deleted.',
|
|
vault_confirm_destroy_group_cascade_prefix: 'The group and its ',
|
|
vault_confirm_destroy_group_cascade_suffix: ' credentials are destroyed forever. Nothing can be recovered.',
|
|
notes_title: 'Notes',
|
|
notes_placeholder: 'Write a quick note...',
|
|
notes_empty: 'You don\'t have any notes yet.',
|
|
notes_updated: 'Edited',
|
|
notes_new: 'New note',
|
|
notes_share_title: 'Share',
|
|
notes_share_add: 'Share with',
|
|
notes_share_placeholder: 'Choose a user',
|
|
notes_share_empty: 'Not shared with anyone.',
|
|
notes_shared_by: 'Shared by',
|
|
recurring_task_new: 'New recurring task',
|
|
recurring_task_project: 'Source project',
|
|
recurring_task_every: 'Every',
|
|
recurring_task_interval: 'Recurrence',
|
|
recurring_task_interval_unit: 'Unit',
|
|
recurring_task_unit_days: 'days',
|
|
recurring_task_unit_months: 'months',
|
|
recurring_task_unit_years: 'years',
|
|
recurring_task_next_due: 'Next due date',
|
|
recurring_task_reminder: 'Reminder',
|
|
recurring_task_reminder_days: 'Remind (days ahead)',
|
|
recurring_task_reminder_hour: 'Reminder hour',
|
|
recurring_task_active: 'Active',
|
|
recurring_task_end_date: 'Until',
|
|
recurring_task_unlimited: 'Unlimited',
|
|
recurring_task_unlimited_hint: 'Empty = repeats forever. Once past this date, the task deactivates itself.',
|
|
recurring_task_complete_cycle: 'Complete cycle',
|
|
recurring_task_complete_confirm: 'Confirm you already completed this cycle? The next due date is calculated by adding the configured recurrence.',
|
|
recurring_task_promote: 'Turn into recurring',
|
|
recurring_task_promote_title: 'Turn into recurring task',
|
|
recurring_task_promote_hint: "The original task in the activity is not deleted. A new recurring task is created, linked to this project, that emails a reminder as each due date approaches.",
|
|
project_delete_confirm_msg: 'Are you sure you want to delete this project? It will move to the trash and disappear from the list; a superadmin can restore it or delete it permanently.',
|
|
project_trash: 'Trash',
|
|
project_trash_title: 'Project trash',
|
|
project_trash_back: 'Back to projects',
|
|
project_trash_empty_hint: 'Deleted projects show up here until they are restored or permanently deleted.',
|
|
common_restore: 'Restore',
|
|
activities_trash: 'Deleted activities',
|
|
activities_trash_empty: 'No deleted activities.',
|
|
tasks_trash: 'Deleted tasks',
|
|
tasks_trash_empty: 'No deleted tasks.',
|
|
project_restore: 'Restore',
|
|
project_delete_permanent: 'Delete permanently',
|
|
project_delete_permanent_confirm_msg: 'This CANNOT be undone: the project and all its activities, comments and attachments will be permanently deleted.',
|
|
risk_low: 'Low',
|
|
risk_medium: 'Medium',
|
|
risk_high: 'High',
|
|
|
|
tab_info: 'Info',
|
|
tab_members: 'Members',
|
|
tab_activities: 'Activities',
|
|
tab_gantt: 'Gantt',
|
|
tab_calendar: 'Calendar',
|
|
tab_comments: 'Comments',
|
|
tab_documents: 'Documents',
|
|
|
|
activity_new: 'New activity',
|
|
activity_code: 'Code',
|
|
activity_start_date: 'Start date',
|
|
activity_due_date: 'Due date',
|
|
activity_updated_at: 'Updated',
|
|
activity_actual_end_date: 'Actual end date',
|
|
activity_progress: 'Progress',
|
|
activity_milestone: 'Is milestone',
|
|
activity_estimated_hours: 'Estimated hours',
|
|
activity_dependencies: 'Dependencies',
|
|
activity_move: 'Move to another project',
|
|
activity_move_title: 'Move activity',
|
|
activity_move_target: 'Target project',
|
|
activity_move_confirm_msg: 'Activity "{activity}" (along with its tasks) will move to project "{project}". Continue?',
|
|
activity_convert: 'Convert to project',
|
|
activity_convert_title: 'Convert activity to project',
|
|
activity_convert_hint: 'A task always needs a containing activity — a new project is created and, inside it, an activity that will receive this activity\'s tasks (and comments/documents).',
|
|
activity_convert_project_name: 'New project name',
|
|
activity_convert_activity_name: 'Activity name (will hold the tasks)',
|
|
activity_convert_confirm_msg: 'Activity "{activity}" will become the new project "{project}", with an activity "{newActivity}" holding its tasks. Continue?',
|
|
activity_add_dependency: 'Add dependency',
|
|
activity_depends_on: 'Depends on',
|
|
activity_no_dependency_options: 'There are no other activities in this project to add as a dependency.',
|
|
tasks_title: 'Tasks',
|
|
task_new: 'New task',
|
|
task_done: 'Done',
|
|
|
|
due_on_time: 'On time',
|
|
due_warning: 'Due soon',
|
|
due_today: 'Due today',
|
|
due_overdue: 'Overdue',
|
|
|
|
org_departments: 'Departments',
|
|
org_users: 'Users',
|
|
department_new: 'New department',
|
|
department_parent: 'Parent department',
|
|
user_new: 'New user',
|
|
user_email: 'Email',
|
|
user_role: 'Role',
|
|
user_position: 'Position',
|
|
user_password: 'Initial password',
|
|
|
|
config_title: 'Settings',
|
|
config_appearance: 'Appearance',
|
|
config_catalogs: 'Catalogs',
|
|
config_priorities: 'Priorities',
|
|
config_project_statuses: 'Project statuses',
|
|
config_activity_statuses: 'Activity statuses',
|
|
config_project_types: 'Project types',
|
|
|
|
comments_title: 'Comments',
|
|
comment_placeholder: 'Write a comment...',
|
|
comment_send: 'Send',
|
|
|
|
documents_title: 'Attachments',
|
|
document_upload: 'Upload file',
|
|
document_view: 'View',
|
|
document_view_error: 'Could not load the file content.',
|
|
document_download: 'Download',
|
|
|
|
notifications_title: 'Notifications',
|
|
notifications_empty: 'No notifications',
|
|
notifications_mark_all_read: 'Mark all as read',
|
|
},
|
|
};
|