# Spanish (es) translations for Edu-Space Admin # msgid "" msgstr "" "Project-Id-Version: Edu-Space Admin 1.0\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "POT-Creation-Date: 2026-09-03 01:57-0300\n" "PO-Revision-Date: 2024-01-01 00:00+0000\n" "Last-Translator: Admin \n" "Language: es\n" "Language-Team: es \n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.14.0\n" #: app/forms/auth.py:7 app/templates/admin/users/list.html:72 #: app/templates/auth/profile.html:44 msgid "Email" msgstr "Correo Electrónico" #: app/forms/auth.py:12 app/templates/admin/users/form.html:49 msgid "Password" msgstr "Contraseña" #: app/forms/auth.py:13 msgid "Remember me" msgstr "Recordarme" #: app/forms/auth.py:14 msgid "Sign In" msgstr "Iniciar Sesión" #: app/forms/classroom.py:8 app/templates/classrooms/list.html:83 msgid "Building" msgstr "Edificio" #: app/forms/classroom.py:12 msgid "Room Number" msgstr "Número de Aula" #: app/forms/classroom.py:16 app/templates/classrooms/add.html:148 msgid "Floor" msgstr "Piso" #: app/forms/classroom.py:20 app/templates/classrooms/list.html:79 #: app/templates/schedule/add.html:205 msgid "Capacity" msgstr "Capacidad" #: app/forms/classroom.py:24 app/templates/admin/roles/edit.html:48 #: app/templates/admin/roles/list.html:29 msgid "Description" msgstr "Descripción" #: app/forms/classroom.py:28 app/templates/admin/import.html:206 #: app/templates/admin/users/list.html:47 #: app/templates/admin/users/list.html:110 app/templates/auth/profile.html:31 #: app/templates/classrooms/list.html:73 msgid "Active" msgstr "Activa" #: app/forms/classroom.py:29 msgid "Save Classroom" msgstr "Guardar Aula" #: app/forms/classroom.py:32 msgid "Resource Type" msgstr "Tipo de Recurso" #: app/forms/classroom.py:33 msgid "Projector" msgstr "Proyector" #: app/forms/classroom.py:34 msgid "Whiteboard" msgstr "Pizarra" #: app/forms/classroom.py:35 msgid "Computer" msgstr "Computadora" #: app/forms/classroom.py:36 msgid "Sound System" msgstr "Sistema de Sonido" #: app/forms/classroom.py:37 msgid "Microphone" msgstr "Micrófono" #: app/forms/classroom.py:38 msgid "Air Conditioner" msgstr "Aire Acondicionado" #: app/forms/classroom.py:39 msgid "Other" msgstr "Otro" #: app/forms/classroom.py:41 msgid "Brand" msgstr "Marca" #: app/forms/classroom.py:42 msgid "Model" msgstr "Modelo" #: app/forms/classroom.py:43 msgid "Specifications" msgstr "Especificaciones" #: app/forms/classroom.py:44 msgid "Functional" msgstr "Funcional" #: app/forms/classroom.py:45 msgid "Save Resource" msgstr "Guardar Recurso" #: app/forms/reservation.py:8 app/templates/auth/profile.html:157 #: app/templates/dashboard.html:155 msgid "Classroom" msgstr "Aula" #: app/forms/reservation.py:9 msgid "Commission/Subject" msgstr "Comisión / Materia" #: app/forms/reservation.py:10 msgid "Start Time" msgstr "Hora de Inicio" #: app/forms/reservation.py:11 msgid "End Time" msgstr "Hora de Fin" #: app/forms/reservation.py:12 app/templates/auth/profile.html:158 msgid "Purpose" msgstr "Propósito" #: app/forms/reservation.py:16 msgid "Expected Attendees" msgstr "Asistentes Estimados" #: app/forms/reservation.py:20 msgid "Notes" msgstr "Notas" #: app/forms/reservation.py:24 msgid "Make Reservation" msgstr "Realizar Reserva" #: app/routes/admin.py:74 app/routes/admin.py:124 msgid "El nombre es requerido." msgstr "El nombre es requerido." #: app/routes/admin.py:76 app/routes/admin.py:126 msgid "El correo electrónico es requerido." msgstr "El correo electrónico es requerido." #: app/routes/admin.py:78 msgid "Ya existe una cuenta con este correo electrónico." msgstr "Ya existe una cuenta con este correo electrónico." #: app/routes/admin.py:80 msgid "La contraseña debe tener al menos 6 caracteres." msgstr "La contraseña debe tener al menos 6 caracteres." #: app/routes/admin.py:84 app/routes/admin.py:134 msgid "Debes seleccionar un rol válido." msgstr "Debes seleccionar un rol válido." #: app/routes/admin.py:102 #, python-format msgid "Usuario \"%(name)s\" creado exitosamente." msgstr "Usuario \"%(name)s\" creado exitosamente." #: app/routes/admin.py:130 msgid "Ya existe otra cuenta con este correo electrónico." msgstr "Ya existe otra cuenta con este correo electrónico." #: app/routes/admin.py:138 msgid "No puedes desactivar tu propia cuenta mientras estás en sesión." msgstr "No puedes desactivar tu propia cuenta mientras estás en sesión." #: app/routes/admin.py:153 msgid "La nueva contraseña debe tener al menos 6 caracteres." msgstr "La nueva contraseña debe tener al menos 6 caracteres." #: app/routes/admin.py:158 #, python-format msgid "Usuario \"%(name)s\" actualizado correctamente." msgstr "Usuario \"%(name)s\" actualizado correctamente." #: app/routes/admin.py:170 msgid "No puedes desactivar tu propia cuenta." msgstr "No puedes desactivar tu propia cuenta." #: app/routes/admin.py:175 msgid "activada" msgstr "activada" #: app/routes/admin.py:175 msgid "desactivada" msgstr "desactivada" #: app/routes/admin.py:176 #, python-format msgid "La cuenta de %(name)s ha sido %(status)s." msgstr "La cuenta de %(name)s ha sido %(status)s." #: app/routes/admin.py:205 app/routes/admin.py:242 msgid "El nombre del rol es requerido." msgstr "El nombre del rol es requerido." #: app/routes/admin.py:209 msgid "Ya existe un rol con ese nombre." msgstr "Ya existe un rol con ese nombre." #: app/routes/admin.py:225 #, python-format msgid "Rol \"%(name)s\" creado exitosamente con sus permisos." msgstr "Rol \"%(name)s\" creado exitosamente con sus permisos." #: app/routes/admin.py:247 msgid "Ya existe otro rol con ese nombre." msgstr "Ya existe otro rol con ese nombre." #: app/routes/admin.py:264 #, python-format msgid "Rol \"%(name)s\" y permisos actualizados correctamente." msgstr "Rol \"%(name)s\" y permisos actualizados correctamente." #: app/routes/admin.py:282 msgid "No se pueden eliminar roles protegidos del sistema." msgstr "No se pueden eliminar roles protegidos del sistema." #: app/routes/admin.py:287 #, python-format msgid "" "No se puede eliminar el rol \"%(name)s\" porque tiene %(count)d " "usuario(s) asignado(s). Reasígnalos primero." msgstr "" "No se puede eliminar el rol \"%(name)s\" porque tiene %(count)d " "usuario(s) asignado(s). Reasígnalos primero." #: app/routes/admin.py:293 #, python-format msgid "El rol \"%(name)s\" ha sido eliminado." msgstr "El rol \"%(name)s\" ha sido eliminado." #: app/routes/admin.py:317 msgid "La sincronización se completó con algunas advertencias." msgstr "La sincronización se completó con algunas advertencias." #: app/routes/admin.py:319 #, python-format msgid "Sincronización completada exitosamente. %(rows)d registros procesados." msgstr "Sincronización completada exitosamente. %(rows)d registros procesados." #: app/routes/admin.py:321 #, python-format msgid "Error al sincronizar con Google Sheets: %(err)s" msgstr "Error al sincronizar con Google Sheets: %(err)s" #: app/routes/auth.py:23 msgid "Tu cuenta ha sido desactivada. Por favor contacta al administrador." msgstr "Tu cuenta ha sido desactivada. Por favor contacta al administrador." #: app/routes/auth.py:42 #, python-format msgid "¡Bienvenido de nuevo, %(name)s!" msgstr "¡Bienvenido de nuevo, %(name)s!" #: app/routes/auth.py:45 msgid "Correo electrónico o contraseña inválidos." msgstr "Correo electrónico o contraseña inválidos." #: app/routes/auth.py:57 msgid "Has cerrado sesión correctamente." msgstr "Has cerrado sesión correctamente." #: app/routes/auth.py:79 msgid "Preferencias de usuario actualizadas correctamente." msgstr "Preferencias de usuario actualizadas correctamente." #: app/templates/base.html:6 msgid "Edu-Space Admin" msgstr "Admin Edu-Space" #: app/templates/admin/import.html:17 app/templates/auth/profile.html:15 #: app/templates/base.html:52 app/templates/dashboard.html:12 msgid "Dashboard" msgstr "Panel" #: app/templates/admin/import.html:42 app/templates/base.html:57 #: app/templates/classrooms/list.html:3 app/templates/classrooms/list.html:11 msgid "Classrooms" msgstr "Aulas" #: app/templates/base.html:61 msgid "All Classrooms" msgstr "Todas las Aulas" #: app/templates/base.html:65 app/templates/classrooms/add.html:3 #: app/templates/classrooms/add.html:11 app/templates/classrooms/list.html:15 #: app/templates/dashboard.html:111 msgid "Add Classroom" msgstr "Agregar Aula" #: app/templates/base.html:72 msgid "Schedule" msgstr "Horarios" #: app/templates/base.html:76 msgid "Calendar View" msgstr "Ver Calendario" #: app/templates/base.html:79 app/templates/schedule/today.html:19 msgid "All Reservations" msgstr "Todas las Reservas" #: app/templates/base.html:83 app/templates/dashboard.html:117 #: app/templates/schedule/add.html:3 app/templates/schedule/add.html:11 #: app/templates/schedule/today.html:16 msgid "New Reservation" msgstr "Nueva Reserva" #: app/templates/base.html:87 app/templates/dashboard.html:120 #: app/templates/schedule/today.html:3 app/templates/schedule/today.html:11 msgid "Today's Schedule" msgstr "Horario de Hoy" #: app/templates/base.html:94 msgid "Management" msgstr "Gestión" #: app/templates/base.html:97 msgid "Users" msgstr "Usuarios" #: app/templates/base.html:98 msgid "Roles & Groups" msgstr "Roles y Grupos" #: app/templates/admin/import.html:3 app/templates/base.html:100 msgid "Import from Google Sheets" msgstr "Importar desde Google Sheets" #: app/templates/base.html:128 msgid "Signed in as" msgstr "Conectado como" #: app/templates/base.html:133 msgid "Profile" msgstr "Perfil" #: app/templates/auth/profile.html:139 app/templates/base.html:136 msgid "Change Password" msgstr "Cambiar Contraseña" #: app/templates/base.html:140 msgid "Logout" msgstr "Cerrar Sesión" #: app/templates/dashboard.html:3 msgid "Dashboard - Edu-Space Admin" msgstr "Panel - Admin Edu-Space" #: app/templates/dashboard.html:13 msgid "Overview" msgstr "Resumen" #: app/templates/dashboard.html:25 msgid "Total Classrooms" msgstr "Total de Aulas" #: app/templates/dashboard.html:41 msgid "Total Subjects" msgstr "Total de Materias" #: app/templates/dashboard.html:57 msgid "Today's Reservations" msgstr "Reservas de Hoy" #: app/templates/dashboard.html:73 msgid "This Week" msgstr "Esta Semana" #: app/templates/dashboard.html:91 msgid "Monthly Reservations" msgstr "Reservas Mensuales" #: app/templates/dashboard.html:105 msgid "Quick Actions" msgstr "Acciones Rápidas" #: app/templates/dashboard.html:114 msgid "Manage Commissions" msgstr "Gestionar Comisiones" #: app/templates/dashboard.html:123 app/templates/schedule/today.html:23 #: app/templates/schedule/today.html:355 msgid "AI Room Optimizer" msgstr "Optimizador de Aulas IA" #: app/templates/admin/import.html:168 app/templates/dashboard.html:126 msgid "View Calendar" msgstr "Ver Calendario" #: app/templates/dashboard.html:141 msgid "Upcoming Reservations (Next 7 Days)" msgstr "Próximas Reservas (Próximos 7 Días)" #: app/templates/dashboard.html:144 msgid "View All" msgstr "Ver Todas" #: app/templates/auth/profile.html:159 app/templates/dashboard.html:154 msgid "Date & Time" msgstr "Fecha y Hora" #: app/templates/dashboard.html:156 msgid "Subject" msgstr "Materia" #: app/templates/dashboard.html:157 msgid "Teacher" msgstr "Profesor" #: app/templates/admin/import.html:179 app/templates/admin/users/list.html:74 #: app/templates/auth/profile.html:160 app/templates/dashboard.html:158 msgid "Status" msgstr "Estado" #: app/templates/admin/roles/list.html:32 #: app/templates/admin/users/list.html:76 app/templates/dashboard.html:159 msgid "Actions" msgstr "Acciones" #: app/templates/classrooms/list.html:112 app/templates/dashboard.html:177 msgid "View" msgstr "Ver" #: app/templates/dashboard.html:188 msgid "No upcoming reservations in the next 7 days" msgstr "No hay próximas reservas en los próximos 7 días" #: app/templates/genetic_optimizer.html:3 #: app/templates/genetic_optimizer.html:70 msgid "AI Room Reservation Optimizer" msgstr "Optimizador de Aulas con IA" #: app/templates/genetic_optimizer.html:73 msgid "" "Use genetic algorithms to automatically optimize room assignments based " "on capacity, availability, and student enrollment." msgstr "" "Usa algoritmos genéticos para optimizar automáticamente la asignación de " "aulas según capacidad, disponibilidad y matrícula de estudiantes." #: app/templates/genetic_optimizer.html:90 msgid "Algorithm Status" msgstr "Estado del Algoritmo" #: app/templates/genetic_optimizer.html:95 msgid "System Status" msgstr "Estado del Sistema" #: app/templates/genetic_optimizer.html:97 msgid "Available Classrooms" msgstr "Aulas Disponibles" #: app/templates/genetic_optimizer.html:101 msgid "Active Commissions" msgstr "Comisiones Activas" #: app/templates/genetic_optimizer.html:105 msgid "Existing Reservations" msgstr "Reservas Existentes" #: app/templates/genetic_optimizer.html:111 msgid "Algorithm Configuration" msgstr "Configuración del Algoritmo" #: app/templates/genetic_optimizer.html:113 msgid "Population Size" msgstr "Tamaño de Población" #: app/templates/genetic_optimizer.html:117 msgid "Generations" msgstr "Generaciones" #: app/templates/genetic_optimizer.html:121 msgid "Mutation Rate" msgstr "Tasa de Mutación" #: app/templates/genetic_optimizer.html:128 msgid "Refresh Status" msgstr "Actualizar Estado" #: app/templates/genetic_optimizer.html:140 msgid "Select Commissions to Optimize" msgstr "Seleccionar Comisiones a Optimizar" #: app/templates/genetic_optimizer.html:144 msgid "Select All" msgstr "Seleccionar Todas" #: app/templates/genetic_optimizer.html:147 msgid "Deselect All" msgstr "Deseleccionar Todas" #: app/templates/genetic_optimizer.html:156 msgid "Loading commissions..." msgstr "Cargando comisiones..." #: app/templates/genetic_optimizer.html:171 msgid "Optimization Controls" msgstr "Controles de Optimización" #: app/templates/genetic_optimizer.html:178 msgid "Start Date Range" msgstr "Rango de Fecha de Inicio" #: app/templates/genetic_optimizer.html:184 msgid "End Date Range" msgstr "Rango de Fecha de Fin" #: app/templates/genetic_optimizer.html:193 msgid "Preview Optimization" msgstr "Previsualizar Optimización" #: app/templates/genetic_optimizer.html:197 msgid "Run Full Optimization" msgstr "Ejecutar Optimización Completa" #: app/templates/genetic_optimizer.html:201 msgid "Apply Reservations" msgstr "Aplicar Reservas" #: app/templates/genetic_optimizer.html:205 msgid "Reset" msgstr "Restablecer" #: app/templates/genetic_optimizer.html:227 msgid "Running genetic algorithm optimization..." msgstr "Ejecutando optimización por algoritmo genético..." #: app/templates/genetic_optimizer.html:228 msgid "This may take a few moments" msgstr "Esto puede demorar unos momentos" #: app/templates/genetic_optimizer.html:237 app/templates/schedule/add.html:25 #: app/templates/schedule/calendar.html:59 msgid "Reservation Details" msgstr "Detalles de la Reserva" #: app/templates/genetic_optimizer.html:244 #: app/templates/schedule/calendar.html:66 msgid "Close" msgstr "Cerrar" #: app/templates/genetic_optimizer.html:247 msgid "Download" msgstr "Descargar" #: app/templates/admin/import.html:11 msgid "Google Sheets Academic Sync" msgstr "Sincronización Académica (Google Sheets)" #: app/templates/admin/import.html:13 msgid "" "Extract and synchronize classrooms, careers, subjects, and weekly " "schedules directly from the official Google Sheet." msgstr "" "Extrae y sincroniza aulas, carreras, asignaturas y horarios semanales " "directamente desde la cartelera oficial." #: app/templates/admin/import.html:28 msgid "Careers" msgstr "Carreras" #: app/templates/admin/import.html:35 msgid "Subjects" msgstr "Materia" #: app/templates/admin/import.html:49 app/templates/admin/import.html:178 msgid "Commissions" msgstr "Comisión:" #: app/templates/admin/import.html:56 msgid "Calendar Classes" msgstr "Clases en Calendario" #: app/templates/admin/import.html:72 msgid "Official Schedule Board (Cartelera de Aulas)" msgstr "Cartelera Oficial de Aulas y Horarios" #: app/templates/admin/import.html:74 msgid "" "Reads published CSV sheets for all 6 days of the week, automatically " "creating or updating academic careers, classrooms, subject codes, " "commissions, and weekly calendar entries without duplicating records." msgstr "" "Lee las hojas publicadas de los 6 días de la semana, creando o " "actualizando carreras, aulas, códigos de asignatura, comisiones y clases " "en calendario sin duplicar registros." #: app/templates/admin/import.html:87 msgid "Sync Data Now" msgstr "Sincronizar Datos Ahora" #: app/templates/admin/import.html:92 msgid "Connecting to Google Sheets and processing records..." msgstr "Conectando con Google Sheets y procesando registros..." #: app/templates/admin/import.html:104 msgid "Synchronization Report" msgstr "Reporte de Sincronización" #: app/templates/admin/import.html:112 msgid "Rows Processed" msgstr "Registros Procesados" #: app/templates/admin/import.html:118 msgid "Careers Created" msgstr "Carreras Creadas" #: app/templates/admin/import.html:124 msgid "Classrooms Created" msgstr "Aulas Creadas" #: app/templates/admin/import.html:130 msgid "Subjects Created" msgstr "Asignaturas Creadas" #: app/templates/admin/import.html:136 msgid "Commissions Created" msgstr "Comisiones Creadas" #: app/templates/admin/import.html:142 msgid "Reservations Created" msgstr "Clases Programadas" #: app/templates/admin/import.html:149 msgid "Warnings / Errors detected:" msgstr "Advertencias / Errores detectados:" #: app/templates/admin/import.html:165 msgid "Recently Synchronized Subjects & Comissions" msgstr "Asignaturas y Comisiones Sincronizadas Recientemente" #: app/templates/admin/import.html:175 msgid "Code" msgstr "Modelo" #: app/templates/admin/import.html:176 msgid "Subject Name" msgstr "Materia" #: app/templates/admin/import.html:177 msgid "Career" msgstr "" #: app/templates/admin/import.html:195 msgid "General" msgstr "Generaciones" #: app/templates/admin/import.html:200 msgid "commission(s)" msgstr "comisión(es)" #: app/templates/admin/import.html:209 app/templates/admin/users/list.html:48 #: app/templates/admin/users/list.html:114 app/templates/auth/profile.html:33 #: app/templates/classrooms/list.html:73 msgid "Inactive" msgstr "Inactiva" #: app/templates/admin/import.html:217 msgid "No subjects in database yet. Click \"Sync Data Now\" to import." msgstr "" "Aún no hay asignaturas en la base de datos. Haz clic en \"Sincronizar " "Datos Ahora\" para importar." #: app/templates/admin/roles/edit.html:3 msgid "Edit Role" msgstr "Editar Rol" #: app/templates/admin/roles/edit.html:3 app/templates/admin/roles/list.html:17 msgid "New Role" msgstr "Nuevo Rol" #: app/templates/admin/roles/edit.html:12 msgid "Edit Role & Access Permissions" msgstr "Editar Rol y Permisos de Acceso" #: app/templates/admin/roles/edit.html:12 msgid "Create Role & Access Permissions" msgstr "Crear Rol y Permisos de Acceso" #: app/templates/admin/roles/edit.html:14 msgid "" "Configure granular feature permissions using the FortiGate-style access " "matrix." msgstr "" "Configura permisos granulares por módulo utilizando la matriz estilo " "FortiGate." #: app/templates/admin/roles/edit.html:18 msgid "Back to Roles" msgstr "Volver a Roles" #: app/templates/admin/roles/edit.html:30 msgid "Role Information" msgstr "Información del Rol" #: app/templates/admin/roles/edit.html:35 #: app/templates/admin/roles/list.html:28 msgid "Role Name" msgstr "Nombre del Rol" #: app/templates/admin/roles/edit.html:38 msgid "e.g. Docente, Operador, Admin" msgstr "ej. Docente, Operador, Admin" #: app/templates/admin/roles/edit.html:39 msgid "System role name cannot be modified" msgstr "El nombre de un rol del sistema no se puede modificar" #: app/templates/admin/roles/edit.html:42 msgid "This is a system role; its name is protected." msgstr "Este es un rol del sistema; su nombre está protegido." #: app/templates/admin/roles/edit.html:50 msgid "Describe what responsibilities this role covers..." msgstr "Describe qué responsabilidades cubre este rol..." #: app/templates/admin/roles/edit.html:57 msgid "Save Role & Permissions" msgstr "Guardar Rol y Permisos" #: app/templates/admin/roles/edit.html:60 #: app/templates/admin/roles/list.html:107 #: app/templates/admin/users/form.html:95 app/templates/classrooms/add.html:111 #: app/templates/schedule/add.html:136 msgid "Cancel" msgstr "Cancelar" #: app/templates/admin/roles/edit.html:73 msgid "Access Permissions" msgstr "Permisos de Acceso" #: app/templates/admin/roles/edit.html:79 msgid "Set All" msgstr "Asignar Todos" #: app/templates/admin/roles/edit.html:84 msgid "Set All to None" msgstr "Asignar Todos a Ninguno" #: app/templates/admin/roles/edit.html:89 msgid "Set All to Read" msgstr "Asignar Todos a Solo Lectura" #: app/templates/admin/roles/edit.html:94 msgid "Set All to Read/Write" msgstr "Asignar Todos a Lectura y Escritura" #: app/templates/admin/roles/edit.html:106 msgid "Access Control" msgstr "Control de Acceso" #: app/templates/admin/roles/edit.html:107 #: app/templates/admin/roles/list.html:82 msgid "Permissions" msgstr "Permisos" #: app/templates/admin/roles/edit.html:136 msgid "None" msgstr "Ninguno" #: app/templates/admin/roles/edit.html:143 msgid "Read" msgstr "Lectura" #: app/templates/admin/roles/edit.html:150 msgid "Read/Write" msgstr "Lectura/Escritura" #: app/templates/admin/roles/list.html:3 msgid "Roles & Permissions" msgstr "Roles y Permisos" #: app/templates/admin/roles/list.html:11 msgid "Roles & Access Groups" msgstr "Roles y Grupos de Acceso" #: app/templates/admin/roles/list.html:13 msgid "Manage user roles and granular access permissions per system module." msgstr "Administra roles de usuario y permisos de acceso granulares por módulo." #: app/templates/admin/roles/list.html:30 msgid "Members" msgstr "Miembros" #: app/templates/admin/roles/list.html:31 msgid "Permissions Summary" msgstr "Resumen de Permisos" #: app/templates/admin/roles/list.html:46 msgid "System Protected" msgstr "Protegido del Sistema" #: app/templates/admin/roles/list.html:52 msgid "No description provided." msgstr "Sin descripción." #: app/templates/admin/roles/list.html:56 msgid "users" msgstr "usuarios" #: app/templates/admin/roles/list.html:64 msgid "Full Access" msgstr "Control Total" #: app/templates/admin/roles/list.html:68 msgid "Read Only" msgstr "Solo Lectura" #: app/templates/admin/roles/list.html:72 msgid "No Access" msgstr "Sin Acceso" #: app/templates/admin/roles/list.html:81 msgid "Edit Role & Matrix" msgstr "Editar Rol y Matriz" #: app/templates/admin/roles/list.html:85 #: app/templates/admin/roles/list.html:109 msgid "Delete Role" msgstr "Eliminar Rol" #: app/templates/admin/roles/list.html:98 msgid "Confirm Role Deletion" msgstr "Confirmar Eliminación de Rol" #: app/templates/admin/roles/list.html:103 msgid "Are you sure you want to delete the role" msgstr "¿Estás seguro de que deseas eliminar el rol" #: app/templates/admin/roles/list.html:104 msgid "This action cannot be undone." msgstr "Esta acción no se puede deshacer." #: app/templates/admin/users/form.html:3 #: app/templates/admin/users/list.html:129 msgid "Edit User" msgstr "Editar Usuario" #: app/templates/admin/users/form.html:3 app/templates/admin/users/list.html:17 msgid "New User" msgstr "Nuevo Usuario" #: app/templates/admin/users/form.html:12 msgid "Edit User Account" msgstr "Editar Cuenta de Usuario" #: app/templates/admin/users/form.html:12 msgid "Create User Account" msgstr "Crear Cuenta de Usuario" #: app/templates/admin/users/form.html:14 msgid "Configure user credentials, profile information, and role assignment." msgstr "Configura credenciales, datos de perfil y asignación de rol." #: app/templates/admin/users/form.html:18 msgid "Back to Users" msgstr "Volver a Usuarios" #: app/templates/admin/users/form.html:28 msgid "Account Details" msgstr "Detalles de la Cuenta" #: app/templates/admin/users/form.html:34 app/templates/auth/profile.html:48 msgid "Full Name" msgstr "Nombre Completo" #: app/templates/admin/users/form.html:37 msgid "e.g. María González" msgstr "ej. María González" #: app/templates/admin/users/form.html:41 msgid "Email Address" msgstr "Correo Electrónico" #: app/templates/admin/users/form.html:44 msgid "e.g. mgonzalez@edu-space.com" msgstr "ej. mgonzalez@edu-space.com" #: app/templates/admin/users/form.html:53 msgid "Leave empty to keep current password" msgstr "Dejar vacío para mantener la contraseña actual" #: app/templates/admin/users/form.html:53 msgid "At least 6 characters" msgstr "Al menos 6 caracteres" #: app/templates/admin/users/form.html:56 msgid "Only fill this in if you want to reset this user's password." msgstr "Completa esto solo si deseas restablecer la contraseña del usuario." #: app/templates/admin/users/form.html:62 msgid "Role / Access Group" msgstr "Rol / Grupo de Acceso" #: app/templates/admin/users/form.html:64 msgid "Select a role..." msgstr "Selecciona un rol..." #: app/templates/admin/users/form.html:73 msgid "View or manage roles and permissions" msgstr "Ver o administrar roles y permisos" #: app/templates/admin/users/form.html:83 msgid "Active Account" msgstr "Cuenta Activa" #: app/templates/admin/users/form.html:86 msgid "Inactive users are prevented from signing in to the platform." msgstr "Los usuarios inactivos no pueden iniciar sesión en la plataforma." #: app/templates/admin/users/form.html:98 msgid "Save User" msgstr "Guardar Usuario" #: app/templates/admin/users/list.html:3 app/templates/admin/users/list.html:11 msgid "User Management" msgstr "Gestión de Usuarios" #: app/templates/admin/users/list.html:13 msgid "Manage user accounts, assign roles, and control active status." msgstr "" "Administra cuentas de usuario, asigna roles y controla su estado de " "acceso." #: app/templates/admin/users/list.html:32 msgid "Search by name or email..." msgstr "Buscar por nombre o correo..." #: app/templates/admin/users/list.html:38 msgid "All Roles" msgstr "Todos los Roles" #: app/templates/admin/users/list.html:46 msgid "All Statuses" msgstr "Todos los Estados" #: app/templates/admin/users/list.html:53 msgid "Filter" msgstr "Filtrar" #: app/templates/admin/users/list.html:56 msgid "Clear filters" msgstr "Limpiar filtros" #: app/templates/admin/users/list.html:71 msgid "User" msgstr "Usuario" #: app/templates/admin/users/list.html:73 msgid "Role / Group" msgstr "Rol / Grupo" #: app/templates/admin/users/list.html:75 app/templates/auth/profile.html:56 msgid "Last Login" msgstr "Último Inicio de Sesión" #: app/templates/admin/users/list.html:103 msgid "No Role" msgstr "Sin Rol" #: app/templates/admin/users/list.html:123 msgid "Never" msgstr "Nunca" #: app/templates/admin/users/list.html:135 msgid "Deactivate User" msgstr "Desactivar Usuario" #: app/templates/admin/users/list.html:135 msgid "Activate User" msgstr "Activar Usuario" #: app/templates/admin/users/list.html:147 msgid "No users found matching the criteria." msgstr "No se encontraron usuarios que coincidan con la búsqueda." #: app/templates/admin/users/list.html:159 msgid "Showing page" msgstr "Mostrando página" #: app/templates/admin/users/list.html:159 msgid "of" msgstr "de" #: app/templates/admin/users/list.html:159 msgid "total" msgstr "total" #: app/templates/auth/login.html:6 msgid "Login - Edu-Space Admin" msgstr "Iniciar Sesión - Edu-Space Admin" #: app/templates/auth/login.html:40 msgid "Classroom Management System" msgstr "Sistema de Gestión de Aulas" #: app/templates/auth/login.html:67 msgid "Enter your email" msgstr "Ingresa tu correo electrónico" #: app/templates/auth/login.html:81 msgid "Enter your password" msgstr "Ingresa tu contraseña" #: app/templates/auth/login.html:105 msgid "Secure Login • All access is logged" msgstr "Inicio de Sesión Seguro • Todos los accesos son registrados" #: app/templates/auth/profile.html:3 msgid "User Profile" msgstr "Perfil de Usuario" #: app/templates/auth/profile.html:12 msgid "My Profile" msgstr "Mi Perfil" #: app/templates/auth/profile.html:52 msgid "Access Role" msgstr "Rol de Acceso" #: app/templates/auth/profile.html:61 msgid "First login" msgstr "Primer inicio de sesión" #: app/templates/auth/profile.html:66 msgid "Registration Date" msgstr "Fecha de Registro" #: app/templates/auth/profile.html:82 msgid "User Preferences" msgstr "Preferencias de Usuario" #: app/templates/auth/profile.html:89 msgid "Interface Language" msgstr "Idioma de la interfaz" #: app/templates/auth/profile.html:93 msgid "Auto-detect from browser (Default)" msgstr "Detectar automáticamente del navegador (Por defecto)" #: app/templates/auth/profile.html:103 msgid "" "If set, this language overrides the browser configuration for all your " "sessions." msgstr "" "Si se configura, este idioma sobrescribe la configuración del navegador " "en todas tus sesiones." #: app/templates/auth/profile.html:110 msgid "Visual Theme" msgstr "Tema visual" #: app/templates/auth/profile.html:114 msgid "Automatic (follow system)" msgstr "Automático (según el sistema)" #: app/templates/auth/profile.html:117 msgid "Light Mode" msgstr "Modo Claro" #: app/templates/auth/profile.html:120 msgid "Dark Mode" msgstr "Modo Oscuro" #: app/templates/auth/profile.html:124 msgid "Choose your preferred visual theme." msgstr "Elige tu tema visual preferido." #: app/templates/auth/profile.html:131 msgid "Save Preferences" msgstr "Guardar Preferencias" #: app/templates/auth/profile.html:137 msgid "Account Security" msgstr "Seguridad de la cuenta" #: app/templates/auth/profile.html:149 msgid "My Recent Reservations" msgstr "Mis Reservas Recientes" #: app/templates/classrooms/add.html:14 msgid "Back to Classrooms" msgstr "Volver a Aulas" #: app/templates/classrooms/add.html:25 msgid "Classroom Information" msgstr "Información del Aula" #: app/templates/classrooms/add.html:86 msgid "Optional: Add any additional details about this classroom..." msgstr "Opcional: Agrega detalles adicionales sobre esta aula..." #: app/templates/classrooms/add.html:97 msgid "Preview" msgstr "Vista Previa" #: app/templates/classrooms/add.html:100 msgid "Fill in the form to see a preview of the classroom code:" msgstr "Completa el formulario para ver una vista previa del código del aula:" #: app/templates/classrooms/add.html:103 msgid "Full location:" msgstr "Ubicación completa:" #: app/templates/classrooms/add.html:129 msgid "Resources (Optional)" msgstr "Recursos (Opcional)" #: app/templates/classrooms/add.html:133 msgid "You can add classroom resources after creating the classroom." msgstr "Puedes agregar recursos del aula después de crearla." #: app/templates/classrooms/list.html:30 msgid "Search by building, room, description..." msgstr "Buscar por edificio, aula, descripción..." #: app/templates/classrooms/list.html:38 msgid "Show active classrooms only" msgstr "Mostrar solo aulas activas" #: app/templates/classrooms/list.html:44 msgid "Search" msgstr "Buscar" #: app/templates/classrooms/list.html:47 msgid "Clear" msgstr "Limpiar" #: app/templates/classrooms/list.html:99 msgid "resources" msgstr "recursos" #: app/templates/classrooms/list.html:101 msgid "No resources registered" msgstr "Sin recursos registrados" #: app/templates/classrooms/list.html:116 msgid "Edit" msgstr "Editar" #: app/templates/classrooms/list.html:124 msgid "Deactivate" msgstr "Desactivar" #: app/templates/classrooms/list.html:126 msgid "Activate" msgstr "Activar" #: app/templates/classrooms/list.html:144 msgid "Previous" msgstr "Anterior" #: app/templates/classrooms/list.html:172 msgid "Next" msgstr "Siguiente" #: app/templates/classrooms/list.html:185 msgid "No classrooms found" msgstr "No se encontraron aulas" #: app/templates/classrooms/list.html:188 msgid "No classrooms match your search criteria." msgstr "Ninguna aula coincide con tus criterios de búsqueda." #: app/templates/classrooms/list.html:190 msgid "No classrooms have been registered yet." msgstr "Aún no se han registrado aulas." #: app/templates/classrooms/list.html:194 msgid "Add First Classroom" msgstr "Agregar Primera Aula" #: app/templates/schedule/add.html:14 msgid "Back to Reservations" msgstr "Volver a Reservas" #: app/templates/schedule/add.html:41 msgid "Select a classroom for your reservation" msgstr "Selecciona un aula para tu reserva" #: app/templates/schedule/add.html:52 msgid "Select the subject/commission" msgstr "Selecciona la materia o comisión" #: app/templates/schedule/add.html:65 msgid "When will the class start?" msgstr "¿Cuándo comenzará la clase?" #: app/templates/schedule/add.html:76 msgid "When will the class end?" msgstr "¿Cuándo finalizará la clase?" #: app/templates/schedule/add.html:83 msgid "Regular class, exam, study session, etc." msgstr "Clase regular, examen, sesión de estudio, etc." #: app/templates/schedule/add.html:99 msgid "Number of expected attendees" msgstr "Cantidad de asistentes esperados" #: app/templates/schedule/add.html:105 msgid "Any additional notes or special requirements..." msgstr "Cualquier nota adicional o requerimientos especiales..." #: app/templates/schedule/add.html:116 msgid "Reservation Summary" msgstr "Resumen de la Reserva" #: app/templates/schedule/add.html:120 msgid "Selected Classroom:" msgstr "Aula Seleccionada:" #: app/templates/schedule/add.html:121 app/templates/schedule/add.html:129 #: app/templates/schedule/add.html:198 msgid "Not selected" msgstr "No seleccionada" #: app/templates/schedule/add.html:124 msgid "Duration:" msgstr "Duración:" #: app/templates/schedule/add.html:125 app/templates/schedule/add.html:199 msgid "Not calculated" msgstr "No calculada" #: app/templates/schedule/add.html:128 msgid "Commission:" msgstr "Comisión:" #: app/templates/schedule/add.html:152 msgid "Reservation Guidelines" msgstr "Pautas de Reserva" #: app/templates/schedule/add.html:158 msgid "Booking Rules" msgstr "Reglas de Reserva" #: app/templates/schedule/add.html:160 msgid "Reservations can be made up to 3 months in advance" msgstr "Las reservas se pueden realizar hasta con 3 meses de anticipación" #: app/templates/schedule/add.html:161 msgid "Cannot book in the past" msgstr "No se puede reservar en fechas pasadas" #: app/templates/schedule/add.html:162 msgid "Maximum duration: 8 hours per reservation" msgstr "Duración máxima: 8 horas por reserva" #: app/templates/schedule/add.html:163 msgid "Cancellations must be 24 hours before start time" msgstr "Las cancelaciones deben realizarse 24 horas antes del inicio" #: app/templates/schedule/add.html:167 msgid "Important Notes" msgstr "Notas Importantes" #: app/templates/schedule/add.html:169 msgid "Check classroom capacity before booking" msgstr "Verifica la capacidad del aula antes de reservar" #: app/templates/schedule/add.html:170 msgid "Pending reservations require approval" msgstr "Las reservas pendientes requieren aprobación" #: app/templates/schedule/add.html:171 msgid "Time slots must not overlap" msgstr "Los intervalos de tiempo no deben superponerse" #: app/templates/schedule/add.html:172 msgid "System automatically detects conflicts" msgstr "El sistema detecta automáticamente cualquier conflicto" #: app/templates/schedule/add.html:200 msgid "Invalid time range" msgstr "Rango horario inválido" #: app/templates/schedule/add.html:201 msgid "hour" msgstr "hora" #: app/templates/schedule/add.html:202 msgid "hours" msgstr "horas" #: app/templates/schedule/add.html:203 msgid "minute" msgstr "minuto" #: app/templates/schedule/add.html:204 msgid "minutes" msgstr "minutos" #: app/templates/schedule/add.html:206 msgid "Expected attendees exceeds classroom capacity" msgstr "Los asistentes esperados superan la capacidad del aula" #: app/templates/schedule/calendar.html:3 #: app/templates/schedule/calendar.html:10 #: app/templates/schedule/calendar.html:21 msgid "Reservations Calendar" msgstr "Calendario de Reservas" #: app/templates/schedule/calendar.html:11 msgid "View & Manage Reservations" msgstr "Ver y Gestionar Reservas" #: app/templates/schedule/calendar.html:26 msgid "Add Reservation" msgstr "Agregar Reserva" #: app/templates/schedule/calendar.html:29 msgid "List View" msgstr "Vista de Lista" #: app/templates/schedule/calendar.html:40 app/templates/schedule/today.html:54 msgid "Confirmed" msgstr "Confirmada" #: app/templates/schedule/calendar.html:44 app/templates/schedule/today.html:70 msgid "Pending" msgstr "Pendiente" #: app/templates/schedule/today.html:38 msgid "Total Reservations" msgstr "Total de Reservas" #: app/templates/schedule/today.html:86 msgid "Active Classrooms" msgstr "Aulas Ocupadas" #: app/templates/schedule/today.html:342 msgid "No reservations scheduled for today" msgstr "No hay reservas programadas para hoy" #: app/templates/schedule/today.html:344 msgid "There are no classroom reservations for today." msgstr "No hay reservas de aulas para hoy." #: app/templates/schedule/today.html:348 msgid "Schedule First Class" msgstr "Programar Primera Clase" #: app/templates/schedule/today.html:351 msgid "View Week Schedule" msgstr "Ver Horario Semanal" #: app/utils/decorators.py:19 msgid "No tienes los permisos necesarios para acceder a esta sección." msgstr "No tienes los permisos necesarios para acceder a esta sección." #: app/utils/decorators.py:37 msgid "Esta sección requiere privilegios de administrador." msgstr "Esta sección requiere privilegios de administrador." msgid "Buildings" msgstr "Edificios" msgid "Management" msgstr "Gestión" msgid "Roles & Groups" msgstr "Roles y Grupos" msgid "Users" msgstr "Usuarios" msgid "List View" msgstr "Vista de Listado" msgid "Reservations Calendar" msgstr "Calendario de Reservas" msgid "View & Manage Reservations" msgstr "Gestión y Visualización de Horarios" msgid "Close" msgstr "Cerrar" msgid "Timeline View" msgstr "Vista Cronológica" msgid "Grid View" msgstr "Vista en Tabla" msgid "Refresh" msgstr "Actualizar" msgid "Add Classroom" msgstr "Agregar Aula" msgid "Edit Classroom" msgstr "Editar Aula" msgid "All Classrooms" msgstr "Todas las Aulas" msgid "Classrooms" msgstr "Aulas" msgid "Classroom Details" msgstr "Ficha del Aula" msgid "Today's Schedule" msgstr "Cartelera de Hoy" msgid "All Reservations" msgstr "Todas las Reservas" msgid "New Reservation" msgstr "Nueva Reserva" msgid "Schedule" msgstr "Cronograma" msgid "Calendar View" msgstr "Calendario" #~ msgid "Language Preference" #~ msgstr "Preferencia de Idioma"