420a794c9e
Clasificador por reglas sin IA, correccion manual (migracion 040) y filas desplegables en ListView. Flyout por encima de popups. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1595 lines
85 KiB
JavaScript
1595 lines
85 KiB
JavaScript
export const messages = {
|
|
'es-EC': {
|
|
email_change_title: 'Cambiar correo', email_change_new: 'Correo nuevo', email_change_request: 'Solicitar cambio', email_change_requested: 'Solicitud creada', email_change_cancel: 'Cancelar solicitud', email_change_cancelled: 'Solicitud cancelada', email_change_requests: 'Solicitudes de cambio de correo', email_change_none: 'No hay solicitudes pendientes', email_change_approve: 'Aprobar', email_change_reject: 'Rechazar', email_change_reason: 'Motivo del rechazo', email_change_approved: 'Cambio aprobado', email_change_rejected: 'Cambio rechazado', email_change_approve_title: 'Aprobar mi cambio de correo', email_change_confirm_title: 'Confirmar correo nuevo', email_change_accept: 'Aceptar', email_change_self_approved: 'Aprobado. Revisa el correo nuevo para confirmarlo.', email_change_applied: 'Correo actualizado. Todas tus sesiones se cerraron. Inicia sesión con:', email_change_status_pending: 'Pendiente de aprobación', email_change_status_approved: 'Aprobada: revisa tu correo nuevo', email_change_status_rejected: 'Rechazada', email_change_status_cancelled: 'Cancelada', email_change_status_expired: 'Vencida', email_change_status_failed: 'Fallida', email_change_status_applied: 'Aplicada',
|
|
clinic_status_cancelled: 'Cancelada',
|
|
clinic_active: 'Activo',
|
|
clinic_reprogram: 'Reprogramar',
|
|
clinic_history: 'Historial de citas',
|
|
clinic_cancel_confirm: 'Se cancelará la cita y quedará el motivo registrado.',
|
|
clinic_delete_block: 'Eliminar bloqueo',
|
|
clinic_delete_block_confirm: 'Se eliminará el bloqueo.',
|
|
nav_clinic: 'Agenda médica',
|
|
clinic_agenda: 'Agenda',
|
|
clinic_patients: 'Pacientes',
|
|
clinic_blocks: 'Bloqueos',
|
|
clinic_config: 'Configuración de agenda',
|
|
clinic_new_appointment: 'Nueva cita',
|
|
clinic_new_patient: 'Nuevo paciente',
|
|
clinic_new_block: 'Nuevo bloqueo',
|
|
clinic_appointment: 'Cita',
|
|
clinic_patient: 'Paciente',
|
|
clinic_block: 'Bloqueo',
|
|
clinic_no_doctors: 'Aún no hay médicos configurados en la agenda. Pide a un administrador que los registre.', clinic_no_doctors_admin: 'Aún no hay médicos configurados. Regístralos con su horario en la pestaña Configuración de agenda.', calendar_more: 'más', clinic_all_doctors: 'Todos los médicos', clinic_go_to_date: 'Ir a fecha', clinic_status_deleted: 'Eliminada', clinic_delete: 'Eliminar cita', clinic_delete_reason: 'Motivo de eliminación', clinic_delete_confirm: 'La cita se marcará como eliminada: deja de ocupar el horario, pero queda registrada con el motivo para la trazabilidad.', clinic_deleted_notice: 'Cita eliminada: se conserva solo para consulta.', clinic_created_by: 'Agendado por', clinic_cancelled_by: 'Cancelada por', clinic_deleted_by: 'Eliminada por', clinic_ai_agent: 'Agente IA',
|
|
clinic_doctors: 'Médicos',
|
|
clinic_doctor: 'Médico',
|
|
clinic_status: 'Estado',
|
|
clinic_status_scheduled: 'Programada',
|
|
clinic_status_confirmed: 'Confirmada',
|
|
clinic_status_attended: 'Atendida',
|
|
clinic_status_no_show: 'No asistió',
|
|
clinic_search_patient: 'Buscar por nombre, cédula o teléfono',
|
|
clinic_type: 'Tipo de cita',
|
|
clinic_channel: 'Canal',
|
|
clinic_channel_phone: 'Teléfono',
|
|
clinic_channel_whatsapp: 'WhatsApp',
|
|
clinic_channel_in_person: 'Presencial',
|
|
clinic_channel_other: 'Otro',
|
|
clinic_notes: 'Notas',
|
|
clinic_available: 'Huecos disponibles',
|
|
clinic_confirm: 'Confirmar',
|
|
clinic_cancel: 'Cancelar cita',
|
|
clinic_cancel_reason: 'Motivo de cancelación',
|
|
clinic_affected: 'Citas afectadas; hay que reprogramarlas',
|
|
clinic_confirm_affected: 'Confirmar bloqueo',
|
|
clinic_first_names: 'Nombres',
|
|
clinic_last_names: 'Apellidos',
|
|
clinic_identification: 'Cédula / identificación',
|
|
clinic_phone: 'Teléfono',
|
|
clinic_email: 'Correo',
|
|
clinic_birth_date: 'Nacimiento',
|
|
clinic_kind: 'Clase',
|
|
clinic_kind_surgery: 'Quirófano',
|
|
clinic_kind_vacation: 'Vacaciones',
|
|
clinic_kind_other: 'Otro',
|
|
clinic_title: 'Título',
|
|
clinic_staff: 'Personal',
|
|
clinic_user: 'Usuario',
|
|
clinic_scope: 'Rol en la agenda',
|
|
clinic_add_staff: 'Agregar personal',
|
|
clinic_add_segment: 'Agregar tramo',
|
|
clinic_patient_upcoming: 'Este paciente ya tiene citas pendientes (puedes agendar igual):',
|
|
clinic_scope_all: 'Recepción (todos)',
|
|
clinic_scope_own: 'Médico (propia)',
|
|
clinic_is_doctor: 'Es médico',
|
|
clinic_specialty: 'Especialidad',
|
|
clinic_color: 'Color',
|
|
clinic_types: 'Tipos de cita',
|
|
clinic_new_type: 'Nuevo tipo',
|
|
clinic_name: 'Nombre',
|
|
clinic_duration: 'Duración (minutos)',
|
|
clinic_schedules: 'Horario de atención',
|
|
calendar_layer_clinic: 'Citas médicas',
|
|
nav_calendar: 'Calendario',
|
|
calendar_date: 'Fecha',
|
|
notification_meeting_created: 'Nueva reunión', notification_meeting_updated: 'Reunión modificada', notification_meeting_cancelled: 'Reunión cancelada', notification_meeting_occurrence_cancelled: 'Ocurrencia cancelada', notification_meeting_reminder: 'Recordatorio de reunión', notification_meeting_rsvp_accepted: 'Aceptó la reunión', notification_meeting_rsvp_declined: 'Rechazó la reunión', notification_meeting_rsvp_tentative: 'Respondió quizás',
|
|
calendar_today: 'Hoy', calendar_previous: 'Anterior', calendar_next: 'Siguiente',
|
|
calendar_month: 'Mes', calendar_week: 'Semana', calendar_day: 'Día', calendar_agenda: 'Agenda',
|
|
calendar_new: 'Nueva reunión', calendar_open: 'Abrir', calendar_show_due: 'Mostrar vencimientos de actividades', calendar_legend: 'Capas del calendario', calendar_layer_meetings: 'Reuniones', calendar_layer_activities: 'Mis actividades', calendar_layer_recurring: 'Tareas recurrentes', calendar_overdue: 'Vencido', calendar_layer_projects: 'Proyectos', calendar_layer_tasks: 'Mis tareas', calendar_only: 'Solo', calendar_show_all: 'Ver todo', calendar_filter_origin: 'Ver', calendar_filter_types: 'Mostrar', calendar_all_types: 'Todo', calendar_no_types: 'Nada seleccionado', calendar_origin_all: 'Todo (mío y compartido)', calendar_origin_mine: 'Solo lo mío', calendar_origin_shared: 'Compartido conmigo', calendar_due: 'Vence', calendar_empty: 'No hay eventos en este período',
|
|
calendar_title: 'Título', calendar_description: 'Descripción', calendar_start: 'Inicio', calendar_end: 'Fin', calendar_all_day: 'Todo el día',
|
|
calendar_location: 'Ubicación', calendar_video_url: 'Enlace de videollamada', calendar_project: 'Proyecto', calendar_organizer: 'Organizador', calendar_reminder: 'Recordatorio', calendar_none: 'Ninguno', calendar_one_day: 'Un día antes', calendar_minutes: 'minutos',
|
|
calendar_participants: 'Participantes internos', calendar_external: 'Correos externos', calendar_add: 'Agregar', calendar_invalid_email: 'Correo inválido o límite de 50 participantes',
|
|
calendar_recurrence: 'Repetición', calendar_daily: 'Diaria', calendar_weekly: 'Semanal', calendar_monthly: 'Mensual', calendar_interval: 'Cada', calendar_count: 'Número de ocurrencias', calendar_until: 'Hasta la fecha',
|
|
calendar_mon: 'Lun', calendar_tue: 'Mar', calendar_wed: 'Mié', calendar_thu: 'Jue', calendar_fri: 'Vie', calendar_sat: 'Sáb', calendar_sun: 'Dom',
|
|
calendar_rsvp_pending: 'Pendiente', calendar_rsvp_accepted: 'Aceptar', calendar_rsvp_declined: 'Rechazar', calendar_rsvp_tentative: 'Quizás',
|
|
calendar_conflicts: 'Hay participantes con otra reunión a la misma hora', calendar_save_anyway: 'Confirmar y guardar',
|
|
calendar_cancel: 'Cancelar reunión', calendar_cancel_occurrence: 'Cancelar esta ocurrencia', calendar_cancel_confirm: 'Se cancelará la serie y se avisará a los participantes.', calendar_cancel_occurrence_confirm: 'Se cancelará esta ocurrencia y se avisará a los participantes.', calendar_cancelled: 'Reunión cancelada',
|
|
appName: 'LinkedCorp Proyectos',
|
|
nav_dashboard: 'Panel',
|
|
user_modules: 'Módulos',
|
|
user_modules_hint: 'Marca los módulos que este usuario puede usar. Lo que no esté marcado no aparece en su menú y el sistema le niega el acceso.',
|
|
user_modules_saved: 'Módulos actualizados. El usuario verá el cambio al recargar.',
|
|
dashboard_no_projects_module: 'Bienvenido. Usa el menú de la izquierda para ir a los módulos que tienes habilitados.',
|
|
config_ai: 'Inteligencia artificial (IA)',
|
|
ai_not_configured: 'La IA no está configurada: carga una clave de API de Anthropic para habilitar las funciones con IA.',
|
|
ai_hint: 'La clave se guarda cifrada y nunca sale del servidor. Haiku es el modelo más económico; Sonnet da mejores resultados con mayor costo.',
|
|
ai_api_key: 'Clave de API (Anthropic)',
|
|
ai_key_configured_hint: 'Hay una clave guardada. Déjalo vacío para conservarla.',
|
|
ai_model: 'Modelo',
|
|
ai_model_haiku: 'Claude Haiku 5.5 (económico)',
|
|
ai_model_sonnet: 'Claude Sonnet 5.5 (mejor calidad)',
|
|
ai_test: 'Probar conexión',
|
|
ai_testing: 'Probando...',
|
|
ai_test_success: 'Conexión correcta con la IA',
|
|
ai_plan_button: 'Plan con IA',
|
|
ai_plan_title: 'Plan de actividades con IA',
|
|
ai_plan_hint: 'La IA propone actividades y tareas a partir del nombre, descripción y objetivo del proyecto. Puedes agregar indicaciones. Revisarás la propuesta antes de crear nada.',
|
|
ai_plan_description: 'Indicaciones (opcional)',
|
|
ai_plan_placeholder: 'Ej.: migrar 40 buzones a Microsoft 365 en 6 semanas, con capacitación a usuarios',
|
|
ai_plan_generate: 'Generar propuesta',
|
|
ai_plan_generating: 'Generando...',
|
|
ai_plan_review: 'Desmarca lo que no quieras. Las actividades se crean encadenadas desde hoy, con prioridad media; luego puedes editarlas.',
|
|
ai_plan_days: 'días',
|
|
ai_busy_generating: 'La IA está preparando la propuesta...',
|
|
ai_busy_hint: 'Suele tardar entre 5 y 30 segundos. No cierres esta ventana.',
|
|
ai_busy_creating: 'Creando actividades y tareas...',
|
|
ai_plan_day: 'día',
|
|
ai_plan_apply: 'Crear seleccionadas',
|
|
ai_plan_creating: 'Creando...',
|
|
ai_plan_back: 'Volver',
|
|
ai_plan_created: 'Actividades creadas',
|
|
ai_new_project_button: 'Nuevo con IA',
|
|
ai_new_project_title: 'Nuevo proyecto con IA',
|
|
ai_new_project_objective: '¿Qué proyecto quieres emprender? Describe su objetivo',
|
|
ai_new_project_min_chars: 'caracteres mínimos',
|
|
ai_new_project_placeholder: 'Ej.: implementar una mesa de ayuda para que los usuarios reporten incidencias de TI con seguimiento y tiempos de respuesta',
|
|
ai_new_project_start: 'Fecha de inicio',
|
|
ai_new_project_fixed: 'El proyecto se crea en estado Planificado, contigo como responsable y único miembro. La IA propone el nombre, las actividades y sus tareas; podrás revisarlos antes de crear.',
|
|
ai_new_project_type: 'Tipo',
|
|
ai_similar_actividad: 'actividad',
|
|
ai_similar_tarea: 'tarea',
|
|
ai_similar_in: 'en',
|
|
ai_new_project_similar: 'Esto ya existe o se parece a trabajo existente; revisa antes de crear (se abre en otra pestaña):',
|
|
ai_new_project_goal: 'Objetivo',
|
|
ai_new_project_desc: 'Descripción',
|
|
ai_new_project_end: 'Fin estimado',
|
|
ai_new_project_review: 'Desmarca las actividades que no quieras. Puedes cambiar el nombre aquí o después en el proyecto.',
|
|
ai_new_project_create: 'Crear proyecto',
|
|
ai_usage_title: 'Consumo por usuario',
|
|
ai_usage_month: 'Este mes',
|
|
ai_usage_all: 'Todo',
|
|
ai_usage_user: 'Usuario',
|
|
ai_usage_calls: 'Consultas',
|
|
ai_usage_input: 'Tokens entrada',
|
|
ai_usage_output: 'Tokens salida',
|
|
ai_usage_cost: 'Costo (USD)',
|
|
ai_usage_last: 'Último uso',
|
|
ai_usage_total: 'Total',
|
|
ai_usage_hint: 'costo estimado; el monto exacto está en la consola de Anthropic.',
|
|
ai_usage_empty: 'Todavía no hay consumo registrado.',
|
|
ai_report_button: 'Informe con IA',
|
|
ai_report_title: 'Informe de estado',
|
|
ai_report_busy: 'La IA está redactando el informe...',
|
|
ai_report_date: 'Generado',
|
|
ai_report_health: 'Estado general',
|
|
ai_report_summary: 'Resumen',
|
|
ai_report_achievements: 'Avances',
|
|
ai_report_delays: 'Atrasos',
|
|
ai_report_risks: 'Riesgos',
|
|
ai_report_next: 'Próximos pasos',
|
|
ai_report_disclaimer: 'Redactado por IA a partir de los datos del sistema; revísalo antes de enviarlo.',
|
|
ai_report_copy: 'Copiar',
|
|
ai_report_download: 'Descargar .txt',
|
|
ai_report_regenerate: 'Volver a generar',
|
|
ai_report_copied: 'Informe copiado al portapapeles',
|
|
ai_report_copy_failed: 'No se pudo copiar; usa Descargar.',
|
|
ai_health_en_curso: 'En curso',
|
|
ai_health_en_riesgo: 'En riesgo',
|
|
ai_health_atrasado: 'Atrasado',
|
|
ai_health_completado: 'Completado',
|
|
ai_health_sin_iniciar: 'Sin iniciar',
|
|
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_failed: 'La actualización falló. Revisa el registro del actualizador en el servidor.',
|
|
updater_phase_backup: 'Respaldando la base de datos…',
|
|
updater_phase_source: 'Descargando el código nuevo…',
|
|
updater_phase_backend: 'Instalando backend y aplicando migraciones…',
|
|
updater_phase_frontend: 'Instalando y compilando frontend…',
|
|
updater_phase_publish: 'Publicando frontend…',
|
|
updater_phase_restart: 'Reiniciando servicios…',
|
|
updater_phase_verify: 'Comprobando ambas versiones…',
|
|
updater_retry_check: 'Reintentar comprobación',
|
|
updater_reload: 'Recargar página',
|
|
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_expand: 'Desplegar',
|
|
common_collapse: 'Plegar',
|
|
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.',
|
|
session_revoked_login_msg: 'Tu sesión fue cerrada desde otro dispositivo o por un administrador. Inicia sesión otra vez para volver a donde estabas.',
|
|
account_title: 'Mi cuenta',
|
|
account_tab_profile: 'Perfil', account_tab_preferences: 'Preferencias', account_tab_security: 'Seguridad', account_tab_sessions: 'Sesiones activas',
|
|
account_language: 'Idioma', account_theme: 'Tema', account_buttons: 'Apariencia de botones',
|
|
change_password_sessions_closed: 'Clave actualizada. Se cerraron las demás sesiones.',
|
|
sessions_title: 'Sesiones', sessions_device: 'Navegador y sistema', sessions_ip: 'IP', sessions_started: 'Inicio', sessions_seen: 'Última actividad',
|
|
sessions_current: 'Esta sesión', sessions_close: 'Cerrar sesión', sessions_close_others: 'Cerrar todas las demás', sessions_close_all: 'Cerrar todas',
|
|
sessions_confirm: '¿Quieres cerrar esta sesión?', sessions_confirm_all: '¿Quieres cerrar estas sesiones?', sessions_closed: 'Sesiones cerradas.',
|
|
sessions_refresh: 'Actualizar',
|
|
sessions_unknown: 'Desconocido',
|
|
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_cpu_year: 'Año del procesador',
|
|
eq_cpu_year_get: 'Obtener fecha',
|
|
eq_cpu_year_loading: 'Consultando...',
|
|
eq_cpu_year_hint: 'La IA consulta solo el nombre del procesador y devuelve el año de lanzamiento (el más antiguo si hay dos).',
|
|
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_tab_licenses: 'Licenciamiento',
|
|
eq_sw_type: 'Tipo',
|
|
eq_sw_type_all: 'Todos los tipos',
|
|
eq_sw_type_free: 'Gratuito',
|
|
eq_sw_type_paid: 'Pago',
|
|
eq_sw_type_personal_free: 'Gratis solo personal',
|
|
eq_sw_type_component: 'Componente o incluido',
|
|
eq_sw_type_unclassified: 'Sin clasificar',
|
|
eq_sw_programs: 'programas',
|
|
eq_sw_classify_as: 'Marcar como',
|
|
eq_sw_classify_auto: 'Volver a automático',
|
|
eq_sw_manual: 'Tipo corregido a mano',
|
|
eq_sw_hint: 'Clasificación orientativa por nombre y fabricante: no es un dictamen legal ni detecta software sin licencia.',
|
|
eq_lic_windows: 'Windows',
|
|
eq_lic_office: 'Office',
|
|
eq_lic_office_installed: 'Office instalado',
|
|
eq_lic_edition: 'Edición',
|
|
eq_lic_product_id: 'Product ID',
|
|
eq_lic_key: 'Clave (parcial)',
|
|
eq_lic_channel: 'Canal',
|
|
eq_lic_owner: 'Registrado a',
|
|
eq_lic_oem: 'OEM',
|
|
eq_lic_not_oem: 'Retail / Volumen',
|
|
eq_lic_msdn: 'MSDN: solo desarrollo y pruebas',
|
|
eq_lic_no_windows: 'El agente no reportó licencia de Windows (equipo sin Windows o reporte anterior).',
|
|
eq_lic_no_office: 'El agente no reportó licencias de Office.',
|
|
eq_lic_hint: 'Datos que reporta el agente desde el registro: no indican si la licencia está activada. Microsoft 365 por suscripción se licencia por usuario y no aparece aquí. La clave se muestra parcial.',
|
|
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',
|
|
config_integrations: 'Conexiones externas',
|
|
int_connections: 'Conexiones',
|
|
int_new_connection: 'Nueva conexión',
|
|
int_url: 'URL del conector',
|
|
int_token: 'Token del conector',
|
|
int_token_keep: 'Déjalo vacío para conservar el token guardado.',
|
|
int_test: 'Probar conexión',
|
|
int_test_ok: 'Conexión correcta',
|
|
int_sources: 'Fuentes de datos',
|
|
int_purpose_patients: 'Pacientes (Agenda médica)',
|
|
int_purpose_employees: 'Empleados (nómina)',
|
|
int_purpose_providers: 'Proveedores (médicos que facturan)',
|
|
emp_from_provider: 'Agregar desde proveedores',
|
|
emp_provider_search: 'Buscar por nombre, apellido o cédula (mínimo 3 letras)',
|
|
emp_provider_pick: 'Revisa apellidos y nombres: en el origen el orden no siempre es el mismo.',
|
|
emp_already: 'Ya es empleado',
|
|
emp_no_provider_source: 'No hay fuente de proveedores configurada (Configuración → Conexiones externas).',
|
|
int_not_configured: 'Sin configurar',
|
|
int_configure: 'Configurar',
|
|
int_connection: 'Conexión',
|
|
int_source: 'Fuente',
|
|
int_table: 'Tabla',
|
|
int_mode: 'Modo',
|
|
int_mode_import: 'Importar (copia en el sistema)',
|
|
int_mode_live: 'Consulta en vivo',
|
|
int_preview: 'Vista previa (20 filas)',
|
|
int_mapping: 'Campos a usar',
|
|
int_filter: 'Filtro (solo registros con este valor)',
|
|
int_filter_field: 'Campo',
|
|
int_filter_value: 'Valor',
|
|
int_changed_field: 'Campo de última modificación (para traer solo cambios)',
|
|
int_last_sync: 'Última sincronización',
|
|
int_sync_now: 'Traer cambios',
|
|
int_sync_full: 'Sincronización completa',
|
|
int_schedule_hint: 'Automático: completa de lunes a viernes a las 05:00 y solo cambios cada 15 min de 06:00 a 21:00.',
|
|
int_received: 'recibidos',
|
|
int_created: 'nuevos',
|
|
int_updated: 'actualizados',
|
|
int_deactivated: 'inactivados',
|
|
int_target_identification: 'Cédula / identificación',
|
|
int_target_lastNames: 'Apellidos',
|
|
int_target_firstNames: 'Nombres',
|
|
int_target_phone: 'Teléfono',
|
|
int_target_phone2: 'Teléfono 2',
|
|
int_target_birthDate: 'Nacimiento',
|
|
int_target_position: 'Cargo',
|
|
int_target_department: 'Departamento',
|
|
int_target_hireDate: 'Ingreso',
|
|
int_target_leaveDate: 'Salida',
|
|
int_target_active: 'Activo',
|
|
int_target_externalId: 'Código en el origen',
|
|
int_target_fullName: 'Nombre completo',
|
|
int_target_email: 'Correo',
|
|
int_required: 'obligatorio',
|
|
org_employees: 'Empleados',
|
|
emp_origin: 'Origen',
|
|
emp_origin_payroll: 'Nómina',
|
|
emp_origin_provider: 'Proveedor (SAGA)',
|
|
emp_protected_hint: 'Los empleados con usuario en el sistema no se actualizan ni se inactivan al actualizar.',
|
|
emp_update: 'Actualizar empleados',
|
|
emp_never: 'Nunca actualizado',
|
|
emp_user: 'Usuario del sistema',
|
|
emp_no_source: 'No hay fuente de nómina configurada (Configuración → Conexiones externas).',
|
|
user_from_payroll: 'Desde nómina',
|
|
clinic_origin: 'Origen',
|
|
clinic_origin_local: 'Creado aquí',
|
|
clinic_source_name: 'Nombre en el origen',
|
|
clinic_name_unsplit: 'Nombre traído del origen sin separar: al editar, separa apellidos y nombres.',
|
|
clinic_external_results: 'Del sistema origen',
|
|
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': {
|
|
email_change_title: 'Change email', email_change_new: 'New email', email_change_request: 'Request change', email_change_requested: 'Request created', email_change_cancel: 'Cancel request', email_change_cancelled: 'Request cancelled', email_change_requests: 'Email change requests', email_change_none: 'No pending requests', email_change_approve: 'Approve', email_change_reject: 'Reject', email_change_reason: 'Rejection reason', email_change_approved: 'Change approved', email_change_rejected: 'Change rejected', email_change_approve_title: 'Approve my email change', email_change_confirm_title: 'Confirm new email', email_change_accept: 'Accept', email_change_self_approved: 'Approved. Check your new email to confirm it.', email_change_applied: 'Email updated. All sessions were closed. Sign in with:', email_change_status_pending: 'Pending approval', email_change_status_approved: 'Approved: check your new email', email_change_status_rejected: 'Rejected', email_change_status_cancelled: 'Cancelled', email_change_status_expired: 'Expired', email_change_status_failed: 'Failed', email_change_status_applied: 'Applied',
|
|
clinic_status_cancelled: 'Cancelled',
|
|
clinic_active: 'Active',
|
|
clinic_reprogram: 'Reschedule',
|
|
clinic_history: 'Appointment history',
|
|
clinic_cancel_confirm: 'The appointment will be cancelled and the reason recorded.',
|
|
clinic_delete_block: 'Delete block',
|
|
clinic_delete_block_confirm: 'The block will be deleted.',
|
|
nav_clinic: 'Medical schedule',
|
|
clinic_agenda: 'Schedule',
|
|
clinic_patients: 'Patients',
|
|
clinic_blocks: 'Blocks',
|
|
clinic_config: 'Schedule settings',
|
|
clinic_new_appointment: 'New appointment',
|
|
clinic_new_patient: 'New patient',
|
|
clinic_new_block: 'New block',
|
|
clinic_appointment: 'Appointment',
|
|
clinic_patient: 'Patient',
|
|
clinic_block: 'Block',
|
|
clinic_no_doctors: 'No doctors are set up in the schedule yet. Ask an administrator to add them.', clinic_no_doctors_admin: 'No doctors are set up yet. Add them with their hours in the Schedule settings tab.', calendar_more: 'more', clinic_all_doctors: 'All doctors', clinic_go_to_date: 'Go to date', clinic_status_deleted: 'Deleted', clinic_delete: 'Delete appointment', clinic_delete_reason: 'Deletion reason', clinic_delete_confirm: 'The appointment will be marked as deleted: it frees the time slot but stays recorded with the reason for traceability.', clinic_deleted_notice: 'Deleted appointment: kept for reference only.', clinic_created_by: 'Booked by', clinic_cancelled_by: 'Cancelled by', clinic_deleted_by: 'Deleted by', clinic_ai_agent: 'AI agent',
|
|
clinic_doctors: 'Doctors',
|
|
clinic_doctor: 'Doctor',
|
|
clinic_status: 'Status',
|
|
clinic_status_scheduled: 'Scheduled',
|
|
clinic_status_confirmed: 'Confirmed',
|
|
clinic_status_attended: 'Attended',
|
|
clinic_status_no_show: 'No show',
|
|
clinic_search_patient: 'Search name, ID or phone',
|
|
clinic_type: 'Appointment type',
|
|
clinic_channel: 'Channel',
|
|
clinic_channel_phone: 'Phone',
|
|
clinic_channel_whatsapp: 'WhatsApp',
|
|
clinic_channel_in_person: 'In person',
|
|
clinic_channel_other: 'Other',
|
|
clinic_notes: 'Notes',
|
|
clinic_available: 'Available slots',
|
|
clinic_confirm: 'Confirm',
|
|
clinic_cancel: 'Cancel appointment',
|
|
clinic_cancel_reason: 'Cancellation reason',
|
|
clinic_affected: 'Affected appointments; rescheduling needed',
|
|
clinic_confirm_affected: 'Confirm block',
|
|
clinic_first_names: 'First names',
|
|
clinic_last_names: 'Last names',
|
|
clinic_identification: 'ID',
|
|
clinic_phone: 'Phone',
|
|
clinic_email: 'Email',
|
|
clinic_birth_date: 'Date of birth',
|
|
clinic_kind: 'Kind',
|
|
clinic_kind_surgery: 'Surgery',
|
|
clinic_kind_vacation: 'Vacation',
|
|
clinic_kind_other: 'Other',
|
|
clinic_title: 'Title',
|
|
clinic_staff: 'Staff',
|
|
clinic_user: 'User',
|
|
clinic_scope: 'Agenda role',
|
|
clinic_add_staff: 'Add staff',
|
|
clinic_add_segment: 'Add time slot',
|
|
clinic_patient_upcoming: 'This patient already has upcoming appointments (you can still book):',
|
|
clinic_scope_all: 'Reception (all)',
|
|
clinic_scope_own: 'Doctor (own)',
|
|
clinic_is_doctor: 'Is doctor',
|
|
clinic_specialty: 'Specialty',
|
|
clinic_color: 'Color',
|
|
clinic_types: 'Appointment types',
|
|
clinic_new_type: 'New type',
|
|
clinic_name: 'Name',
|
|
clinic_duration: 'Duration (minutes)',
|
|
clinic_schedules: 'Working hours',
|
|
calendar_layer_clinic: 'Medical appointments',
|
|
nav_calendar: 'Calendar',
|
|
calendar_date: 'Date',
|
|
notification_meeting_created: 'New meeting', notification_meeting_updated: 'Meeting updated', notification_meeting_cancelled: 'Meeting cancelled', notification_meeting_occurrence_cancelled: 'Occurrence cancelled', notification_meeting_reminder: 'Meeting reminder', notification_meeting_rsvp_accepted: 'Accepted meeting', notification_meeting_rsvp_declined: 'Declined meeting', notification_meeting_rsvp_tentative: 'Replied maybe',
|
|
calendar_today: 'Today', calendar_previous: 'Previous', calendar_next: 'Next',
|
|
calendar_month: 'Month', calendar_week: 'Week', calendar_day: 'Day', calendar_agenda: 'Agenda',
|
|
calendar_new: 'New meeting', calendar_open: 'Open', calendar_show_due: 'Show activity due dates', calendar_legend: 'Calendar layers', calendar_layer_meetings: 'Meetings', calendar_layer_activities: 'My activities', calendar_layer_recurring: 'Recurring tasks', calendar_overdue: 'Overdue', calendar_layer_projects: 'Projects', calendar_layer_tasks: 'My tasks', calendar_only: 'Only', calendar_show_all: 'Show all', calendar_filter_origin: 'View', calendar_filter_types: 'Show', calendar_all_types: 'All', calendar_no_types: 'Nothing selected', calendar_origin_all: 'All (mine and shared)', calendar_origin_mine: 'Only mine', calendar_origin_shared: 'Shared with me', calendar_due: 'Due', calendar_empty: 'No events in this period',
|
|
calendar_title: 'Title', calendar_description: 'Description', calendar_start: 'Start', calendar_end: 'End', calendar_all_day: 'All day',
|
|
calendar_location: 'Location', calendar_video_url: 'Video call URL', calendar_project: 'Project', calendar_organizer: 'Organizer', calendar_reminder: 'Reminder', calendar_none: 'None', calendar_one_day: 'One day before', calendar_minutes: 'minutes',
|
|
calendar_participants: 'Internal participants', calendar_external: 'External emails', calendar_add: 'Add', calendar_invalid_email: 'Invalid email or 50 participant limit',
|
|
calendar_recurrence: 'Recurrence', calendar_daily: 'Daily', calendar_weekly: 'Weekly', calendar_monthly: 'Monthly', calendar_interval: 'Every', calendar_count: 'Occurrences', calendar_until: 'Until date',
|
|
calendar_mon: 'Mon', calendar_tue: 'Tue', calendar_wed: 'Wed', calendar_thu: 'Thu', calendar_fri: 'Fri', calendar_sat: 'Sat', calendar_sun: 'Sun',
|
|
calendar_rsvp_pending: 'Pending', calendar_rsvp_accepted: 'Accept', calendar_rsvp_declined: 'Decline', calendar_rsvp_tentative: 'Maybe',
|
|
calendar_conflicts: 'Some participants have another meeting at this time', calendar_save_anyway: 'Confirm and save',
|
|
calendar_cancel: 'Cancel meeting', calendar_cancel_occurrence: 'Cancel this occurrence', calendar_cancel_confirm: 'The series will be cancelled and participants notified.', calendar_cancel_occurrence_confirm: 'This occurrence will be cancelled and participants notified.', calendar_cancelled: 'Meeting cancelled',
|
|
appName: 'LinkedCorp Projects',
|
|
nav_dashboard: 'Dashboard',
|
|
user_modules: 'Modules',
|
|
user_modules_hint: 'Check the modules this user can use. Unchecked modules are hidden from their menu and access is denied.',
|
|
user_modules_saved: 'Modules updated. The user will see the change after reloading.',
|
|
dashboard_no_projects_module: 'Welcome. Use the menu on the left to open the modules enabled for you.',
|
|
config_ai: 'Artificial intelligence (AI)',
|
|
ai_not_configured: 'AI is not configured: add an Anthropic API key to enable AI features.',
|
|
ai_hint: 'The key is stored encrypted and never leaves the server. Haiku is the cheapest model; Sonnet gives better results at a higher cost.',
|
|
ai_api_key: 'API key (Anthropic)',
|
|
ai_key_configured_hint: 'A key is saved. Leave empty to keep it.',
|
|
ai_model: 'Model',
|
|
ai_model_haiku: 'Claude Haiku 5.5 (low cost)',
|
|
ai_model_sonnet: 'Claude Sonnet 5.5 (best quality)',
|
|
ai_test: 'Test connection',
|
|
ai_testing: 'Testing...',
|
|
ai_test_success: 'AI connection OK',
|
|
ai_plan_button: 'AI plan',
|
|
ai_plan_title: 'AI activity plan',
|
|
ai_plan_hint: 'AI proposes activities and tasks from the project name, description and objective. You can add instructions. You will review the proposal before anything is created.',
|
|
ai_plan_description: 'Instructions (optional)',
|
|
ai_plan_placeholder: 'E.g.: migrate 40 mailboxes to Microsoft 365 in 6 weeks, with user training',
|
|
ai_plan_generate: 'Generate proposal',
|
|
ai_plan_generating: 'Generating...',
|
|
ai_plan_review: 'Uncheck what you do not want. Activities are created back to back from today with medium priority; you can edit them later.',
|
|
ai_plan_days: 'days',
|
|
ai_busy_generating: 'AI is preparing the proposal...',
|
|
ai_busy_hint: 'It usually takes 5 to 30 seconds. Do not close this window.',
|
|
ai_busy_creating: 'Creating activities and tasks...',
|
|
ai_plan_day: 'day',
|
|
ai_plan_apply: 'Create selected',
|
|
ai_plan_creating: 'Creating...',
|
|
ai_plan_back: 'Back',
|
|
ai_plan_created: 'Activities created',
|
|
ai_new_project_button: 'New with AI',
|
|
ai_new_project_title: 'New project with AI',
|
|
ai_new_project_objective: 'What project do you want to start? Describe its goal',
|
|
ai_new_project_min_chars: 'minimum characters',
|
|
ai_new_project_placeholder: 'E.g.: implement a help desk so users can report IT incidents with tracking and response times',
|
|
ai_new_project_start: 'Start date',
|
|
ai_new_project_fixed: 'The project is created as Planned, with you as owner and only member. AI proposes the name, activities and tasks; you will review them before creating.',
|
|
ai_new_project_type: 'Type',
|
|
ai_similar_actividad: 'activity',
|
|
ai_similar_tarea: 'task',
|
|
ai_similar_in: 'in',
|
|
ai_new_project_similar: 'This already exists or resembles existing work; check before creating (opens in a new tab):',
|
|
ai_new_project_goal: 'Goal',
|
|
ai_new_project_desc: 'Description',
|
|
ai_new_project_end: 'Estimated end',
|
|
ai_new_project_review: 'Uncheck the activities you do not want. You can change the name here or later in the project.',
|
|
ai_new_project_create: 'Create project',
|
|
ai_usage_title: 'Usage by user',
|
|
ai_usage_month: 'This month',
|
|
ai_usage_all: 'All time',
|
|
ai_usage_user: 'User',
|
|
ai_usage_calls: 'Requests',
|
|
ai_usage_input: 'Input tokens',
|
|
ai_usage_output: 'Output tokens',
|
|
ai_usage_cost: 'Cost (USD)',
|
|
ai_usage_last: 'Last used',
|
|
ai_usage_total: 'Total',
|
|
ai_usage_hint: 'estimated cost; the exact amount is in the Anthropic console.',
|
|
ai_usage_empty: 'No usage recorded yet.',
|
|
ai_report_button: 'AI report',
|
|
ai_report_title: 'Status report',
|
|
ai_report_busy: 'AI is writing the report...',
|
|
ai_report_date: 'Generated',
|
|
ai_report_health: 'Overall status',
|
|
ai_report_summary: 'Summary',
|
|
ai_report_achievements: 'Progress',
|
|
ai_report_delays: 'Delays',
|
|
ai_report_risks: 'Risks',
|
|
ai_report_next: 'Next steps',
|
|
ai_report_disclaimer: 'Written by AI from system data; review it before sending.',
|
|
ai_report_copy: 'Copy',
|
|
ai_report_download: 'Download .txt',
|
|
ai_report_regenerate: 'Regenerate',
|
|
ai_report_copied: 'Report copied to clipboard',
|
|
ai_report_copy_failed: 'Could not copy; use Download.',
|
|
ai_health_en_curso: 'On track',
|
|
ai_health_en_riesgo: 'At risk',
|
|
ai_health_atrasado: 'Delayed',
|
|
ai_health_completado: 'Completed',
|
|
ai_health_sin_iniciar: 'Not started',
|
|
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_failed: 'The update failed. Check the updater log on the server.',
|
|
updater_phase_backup: 'Backing up the database…',
|
|
updater_phase_source: 'Downloading the new code…',
|
|
updater_phase_backend: 'Installing backend and applying migrations…',
|
|
updater_phase_frontend: 'Installing and building frontend…',
|
|
updater_phase_publish: 'Publishing frontend…',
|
|
updater_phase_restart: 'Restarting services…',
|
|
updater_phase_verify: 'Checking both versions…',
|
|
updater_retry_check: 'Retry check',
|
|
updater_reload: 'Reload page',
|
|
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_expand: 'Expand',
|
|
common_collapse: 'Collapse',
|
|
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.',
|
|
session_revoked_login_msg: 'Your session was closed from another device or by an administrator. Sign in again to return where you were.',
|
|
account_title: 'My account',
|
|
account_tab_profile: 'Profile', account_tab_preferences: 'Preferences', account_tab_security: 'Security', account_tab_sessions: 'Active sessions',
|
|
account_language: 'Language', account_theme: 'Theme', account_buttons: 'Button appearance',
|
|
change_password_sessions_closed: 'Password updated. Your other sessions were closed.',
|
|
sessions_title: 'Sessions', sessions_device: 'Browser and system', sessions_ip: 'IP', sessions_started: 'Started', sessions_seen: 'Last activity',
|
|
sessions_current: 'This session', sessions_close: 'Close session', sessions_close_others: 'Close all others', sessions_close_all: 'Close all',
|
|
sessions_confirm: 'Do you want to close this session?', sessions_confirm_all: 'Do you want to close these sessions?', sessions_closed: 'Sessions closed.',
|
|
sessions_refresh: 'Refresh',
|
|
sessions_unknown: 'Unknown',
|
|
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_cpu_year: 'Processor year',
|
|
eq_cpu_year_get: 'Get date',
|
|
eq_cpu_year_loading: 'Looking up...',
|
|
eq_cpu_year_hint: 'The AI looks up only the processor name and returns its release year (the oldest if there are two).',
|
|
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_tab_licenses: 'Licensing',
|
|
eq_sw_type: 'Type',
|
|
eq_sw_type_all: 'All types',
|
|
eq_sw_type_free: 'Free',
|
|
eq_sw_type_paid: 'Paid',
|
|
eq_sw_type_personal_free: 'Free for personal use only',
|
|
eq_sw_type_component: 'Component or bundled',
|
|
eq_sw_type_unclassified: 'Unclassified',
|
|
eq_sw_programs: 'programs',
|
|
eq_sw_classify_as: 'Mark as',
|
|
eq_sw_classify_auto: 'Back to automatic',
|
|
eq_sw_manual: 'Type set manually',
|
|
eq_sw_hint: 'Indicative classification by name and publisher: it is not a legal opinion and does not detect unlicensed software.',
|
|
eq_lic_windows: 'Windows',
|
|
eq_lic_office: 'Office',
|
|
eq_lic_office_installed: 'Installed Office',
|
|
eq_lic_edition: 'Edition',
|
|
eq_lic_product_id: 'Product ID',
|
|
eq_lic_key: 'Key (partial)',
|
|
eq_lic_channel: 'Channel',
|
|
eq_lic_owner: 'Registered to',
|
|
eq_lic_oem: 'OEM',
|
|
eq_lic_not_oem: 'Retail / Volume',
|
|
eq_lic_msdn: 'MSDN: development and testing only',
|
|
eq_lic_no_windows: 'The agent did not report a Windows license (non-Windows device or older report).',
|
|
eq_lic_no_office: 'The agent did not report Office licenses.',
|
|
eq_lic_hint: 'Data reported by the agent from the registry: it does not tell whether the license is activated. Microsoft 365 subscriptions are licensed per user and do not show here. The key is shown partially.',
|
|
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',
|
|
config_integrations: 'External connections',
|
|
int_connections: 'Connections',
|
|
int_new_connection: 'New connection',
|
|
int_url: 'Connector URL',
|
|
int_token: 'Connector token',
|
|
int_token_keep: 'Leave empty to keep the saved token.',
|
|
int_test: 'Test connection',
|
|
int_test_ok: 'Connection OK',
|
|
int_sources: 'Data sources',
|
|
int_purpose_patients: 'Patients (Medical schedule)',
|
|
int_purpose_employees: 'Employees (payroll)',
|
|
int_purpose_providers: 'Suppliers (billing doctors)',
|
|
emp_from_provider: 'Add from suppliers',
|
|
emp_provider_search: 'Search by name, last name or ID (at least 3 letters)',
|
|
emp_provider_pick: 'Check last and first names: the source does not always use the same order.',
|
|
emp_already: 'Already an employee',
|
|
emp_no_provider_source: 'No supplier source configured (Settings → External connections).',
|
|
int_not_configured: 'Not configured',
|
|
int_configure: 'Configure',
|
|
int_connection: 'Connection',
|
|
int_source: 'Source',
|
|
int_table: 'Table',
|
|
int_mode: 'Mode',
|
|
int_mode_import: 'Import (copy into the system)',
|
|
int_mode_live: 'Live lookup',
|
|
int_preview: 'Preview (20 rows)',
|
|
int_mapping: 'Fields to use',
|
|
int_filter: 'Filter (only records with this value)',
|
|
int_filter_field: 'Field',
|
|
int_filter_value: 'Value',
|
|
int_changed_field: 'Last-modified field (to fetch only changes)',
|
|
int_last_sync: 'Last sync',
|
|
int_sync_now: 'Fetch changes',
|
|
int_sync_full: 'Full sync',
|
|
int_schedule_hint: 'Automatic: full sync Monday to Friday at 05:00 and changes only every 15 min from 06:00 to 21:00.',
|
|
int_received: 'received',
|
|
int_created: 'new',
|
|
int_updated: 'updated',
|
|
int_deactivated: 'deactivated',
|
|
int_target_identification: 'ID number',
|
|
int_target_lastNames: 'Last names',
|
|
int_target_firstNames: 'First names',
|
|
int_target_phone: 'Phone',
|
|
int_target_phone2: 'Phone 2',
|
|
int_target_birthDate: 'Birth date',
|
|
int_target_position: 'Position',
|
|
int_target_department: 'Department',
|
|
int_target_hireDate: 'Hire date',
|
|
int_target_leaveDate: 'Leave date',
|
|
int_target_active: 'Active',
|
|
int_target_externalId: 'Source code',
|
|
int_target_fullName: 'Full name',
|
|
int_target_email: 'Email',
|
|
int_required: 'required',
|
|
org_employees: 'Employees',
|
|
emp_origin: 'Source',
|
|
emp_origin_payroll: 'Payroll',
|
|
emp_origin_provider: 'Supplier (SAGA)',
|
|
emp_protected_hint: 'Employees with a system user are not updated or deactivated by the update.',
|
|
emp_update: 'Update employees',
|
|
emp_never: 'Never updated',
|
|
emp_user: 'System user',
|
|
emp_no_source: 'No payroll source configured (Settings → External connections).',
|
|
user_from_payroll: 'From payroll',
|
|
clinic_origin: 'Source',
|
|
clinic_origin_local: 'Created here',
|
|
clinic_source_name: 'Name in source',
|
|
clinic_name_unsplit: 'Name imported without split: when editing, separate last and first names.',
|
|
clinic_external_results: 'From source system',
|
|
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',
|
|
},
|
|
};
|