134 Commits

Author SHA1 Message Date
Nurfog 16e93bdf26 Refactor code structure for improved readability and maintainability 2026-04-28 17:33:36 -04:00
Nurfog 42620cc9ac Add SECURITY_TRIAGE.md for vulnerability assessment and remediation plan
- Document current state of vulnerabilities in Rust and frontend dependencies
- Outline active vulnerabilities and their remediation status
- Include notes on resolved issues and remaining bugs
- Define a remediation plan with prioritized actions
2026-04-28 15:47:20 -04:00
Nurfog 2c8bfaa20e chore: update dependencies and improve MermaidBlock security
- Updated mermaid from version 11.13.0 to 9.1.7 for compatibility.
- Upgraded next from version 14.2.21 to ^14.2.35 for the latest features and fixes.
- Added @types/dompurify and isomorphic-dompurify for improved sanitization.
- Replaced innerHTML assignment in MermaidBlock with sanitized SVG using DOMPurify.
- Updated eslint-config-next to ^16.2.4 for better linting support.
2026-04-28 15:15:16 -04:00
Nurfog 567fa66428 feat: implement httpOnly cookie for JWT authentication and update related API calls
Co-authored-by: Copilot <copilot@github.com>
2026-04-28 14:36:06 -04:00
Nurfog 2eb887c486 feat: add security headers to nginx configurations and improve environment variable handling 2026-04-28 14:12:28 -04:00
Nurfog b670ff3c04 Remove build_errors.txt and validate_auth.sh scripts; clean up unused imports and fix type inference issues in lms-service. 2026-04-28 12:29:03 -04:00
Nurfog e88fd571f0 feat: add mentorship assignments and peer review enhancements
- Create `mentorship_assignments` table with relevant fields and indexes.
- Add `peer_review_settings` table for lesson-specific peer review configurations.
- Enhance `peer_reviews` and `course_submissions` tables with additional fields for instructor reviews and final scores.
- Implement My Notes page to display user annotations with delete functionality.
- Create Lesson Annotations component for managing notes with editing and deletion capabilities.
- Develop Mentor Panel component to display mentor and mentee information.
- Add Course Mentorships page for assigning mentors to students with modal for selection.

Co-authored-by: Copilot <copilot@github.com>
2026-04-28 12:23:22 -04:00
Nurfog 553036cb58 feat: add external SAM ID support to courses and update API documentation 2026-04-27 18:01:31 -04:00
Nurfog 12d704a139 feat: add collaborative document functionality for lessons
- Create migration scripts for lesson_collaborative_docs table in both cms-service and lms-service.
- Implement CollaborativeDocEditor component for real-time editing of collaborative documents.
- Add LessonCollaborativeDocPage for instructors to view and manage collaborative documents.
- Include conflict resolution handling in the editor.
- Enhance UI with status indicators and formatting options for the document editor.

Co-authored-by: Copilot <copilot@github.com>
2026-04-27 14:47:41 -04:00
Nurfog 7de24469a3 feat: implement AGS support with OAuth2 token management and score passback functionality 2026-04-27 14:22:09 -04:00
Nurfog f4cddf7345 feat: add study rooms feature with BigBlueButton integration
- Create database migrations for study_rooms table in both cms-service and lms-service.
- Implement study room handlers in lms-service for listing, creating, joining, ending, and deleting study rooms.
- Develop frontend components for managing study rooms in both experience and studio applications.
- Add UI for creating new study rooms, displaying active and ended rooms, and joining sessions.
- Include instructions for configuring BigBlueButton server settings.

Co-authored-by: Copilot <copilot@github.com>
2026-04-27 14:04:06 -04:00
Nurfog fef731df72 feat: add LTI 1.3 Tool Consumer support with database migrations and API endpoints
- Implemented database migrations for lti_external_tools and lti_grade_passback_events tables in both cms-service and lms-service.
- Created API handlers for managing LTI tools including listing, creating, updating, and deleting tools.
- Added functionality for LTI grade passback with validation and signature verification.
- Developed frontend components for LTI tool management and display in course editor.

Co-authored-by: Copilot <copilot@github.com>
2026-04-27 12:51:13 -04:00
Nurfog f6a3f6aedf feat: add PluginBlock component for rendering external web components in sandboxed iframes
feat: implement PluginsPage for managing plugins with create, toggle, and delete functionalities

feat: create PedagogicalAnalyticsPage for displaying course analytics including quality metrics, discrimination index, and curricular suggestions

Co-authored-by: Copilot <copilot@github.com>
2026-04-27 12:22:05 -04:00
Nurfog 9c2edad614 Refactor code structure for improved readability and maintainability 2026-04-24 13:05:28 -04:00
Nurfog 1c67d0dac2 feat: agregar historial de importación de ZIP y metadatos a los activos 2026-04-21 11:43:09 -04:00
Nurfog 254900746d feat: agregar configuración para almacenamiento remoto de ZIP en modo DEV y mejorar la gestión de límites de tamaño de archivos en la importación de ZIP 2026-04-17 17:05:46 -04:00
Nurfog a3467d22d3 feat: Implement ZIP RAG import functionality with background processing
- Added support for ZIP RAG import in the asset management system.
- Introduced a new background task type for ZIP RAG imports.
- Enhanced the asset import process to allow for optional development processing.
- Updated the UI to reflect the new RAG processing status and options.
- Created database migration for background tasks related to ZIP RAG imports.
- Refactored asset handling to support FLV normalization and improved error handling.
- Added new API endpoints and updated existing ones to accommodate changes.
2026-04-17 12:51:50 -04:00
Nurfog 65f62281bb feat: mejorar la gestión de niveles de inglés en la selección de cursos 2026-04-16 15:37:32 -04:00
Nurfog 387d473a7c feat: update environment configuration for local development and enhance deployment scripts 2026-04-16 10:11:19 -04:00
Nurfog 6aa0b235c3 Remove unused SQL queries and update email template handling
- Deleted multiple unused SQL query files from the cms-service.
- Refactored email template handling in the cms-service to improve clarity and maintainability.
- Updated environment variable loading in both cms-service and lms-service to use dotenvy for better configuration management.
- Added a new .env.dev file for local development with database and SMTP configurations.
- Set default value for `certificates_enabled` in the shared common models.
2026-04-15 14:26:44 -04:00
Nurfog 6f8b723d64 feat: add organization email templates management
- Created a new SQL migration to establish the organization_email_templates table with necessary fields and default templates for common events.
- Implemented CRUD operations for email templates in Rust, including listing, creating, updating, and deleting templates.
- Developed a React component for managing email templates, allowing users to create, edit, and delete templates with a user-friendly interface.
2026-04-15 10:26:44 -04:00
Nurfog e1d5975e57 feat: add email settings management
- Introduced EmailSettings component for managing SMTP services.
- Added API endpoints for organization email services including CRUD operations.
- Created database migrations for organization_email_settings and organization_email_services tables.
- Updated the settings page to include EmailSettings component.
- Implemented validation and error handling for email service operations.
2026-04-15 09:33:50 -04:00
Nurfog c21942983a feat: add organization-level certificate toggle and update tower-governor imports 2026-04-14 13:58:58 -04:00
Nurfog 169a0a18a2 feat: fixing certificate and block 2026-04-14 13:07:45 -04:00
Nurfog e0e6655b91 feat: implement course certificate generation system with organization-level toggles 2026-04-14 11:30:00 -04:00
Nurfog c750ad0423 feat: add organization exercise settings management
- Created a new SQL migration to define the organization_exercise_settings table with relevant fields and an index.
- Implemented handlers for loading and updating organization exercise settings in Rust, including default values and upsert functionality.
- Developed a React component for managing exercise feature settings, allowing toggling of features and saving updates to the backend.
2026-04-13 16:55:09 -04:00
Nurfog 0c039ebfbc refactor: Remove unused variables and add dead code allowances for better clarity 2026-04-10 10:50:14 -04:00
Nurfog 53e5ef4d0b feat: Translate various strings and comments to Spanish for better localization
- Updated error messages and comments in main.rs, openapi.rs, portfolio.rs, predictive.rs, ai.rs, health.rs, middleware.rs, models.rs, token_limits.rs, and webhooks.rs to Spanish.
- Enhanced user experience by providing localized content for Spanish-speaking users.
2026-04-10 10:26:26 -04:00
Nurfog f74f94d005 feat(question-bank): extend source options to include 'rag-ai' for AI-generated questions 2026-04-09 17:20:43 -04:00
Nurfog f2f9cef0e7 Refactor code structure for improved readability and maintainability 2026-04-09 16:27:31 -04:00
Nurfog c07ca05572 feat(users): add delete user functionality and confirmation modal
feat(assets): implement S3 proxy for private asset access
2026-04-09 09:36:28 -04:00
Nurfog 6ba9a5a024 Add production environment configuration file with database and service URLs 2026-04-09 09:36:28 -04:00
Nurfog 6f340f14df Fix AI question parsing and expose token admin 2026-04-08 14:50:42 -04:00
Nurfog 95d5dc9e3e feat(question-bank): refactor SQL queries to use a constant for selected columns 2026-04-08 09:37:02 -04:00
Nurfog 82ac2f09fc Add docker-compose.local.yml for local development setup
- Introduced a new docker-compose.local.yml file to facilitate local development.
- Disabled nginx-proxy and acme-companion services for local use.
- Exposed database and application ports directly to the host for easier access.
- Configured PostgreSQL to be accessible on localhost:5433.
- Mapped application ports for studio and experience services.
2026-04-07 17:36:19 -04:00
Nurfog 024bd6e46d feat: enhance asset import functionality and unit tracking
- Added WHISPER_URL environment variable to docker-compose for audio transcription service.
- Updated Nginx configuration to increase timeout settings for API requests.
- Enhanced asset ingestion process to extract unit numbers from ZIP entry paths, supporting various naming conventions.
- Implemented logic to split intensive courses into two regular courses during asset import.
- Added new fields to the Asset and QuestionBank models to track unit numbers and source asset links.
- Introduced backward-compatible fallbacks for fetching study plans and courses from legacy MySQL database.
- Improved error handling and progress tracking during ZIP file uploads in the frontend.
- Created a new SQL migration to add unit_number and source_asset_id columns to the assets and question_bank tables, along with necessary indexes for performance.
2026-04-07 13:38:22 -04:00
Nurfog 7f9b9d69ae feat: Implement SAM structure mirroring in PostgreSQL for study plans and courses
- Added functionality to save study plans and courses in SAM format to PostgreSQL.
- Updated SQL queries to reflect SAM-native column names and handle conflicts appropriately.
- Introduced new fields in the Asset model for English level and SAM identifiers.
- Enhanced the TestTemplateForm component to manage linked assets and shared materials.
- Created a new AdminSharedMaterialsPage for uploading ZIP files of shared materials.
- Added migrations to create SAM mirror tables and update the assets table with new columns.
2026-04-06 17:04:36 -04:00
Nurfog 92b4e4a3ac feat(cms/studio): agregar plantillas de curso reutilizables
- backend: CRUD básico de course templates y endpoint para crear curso desde plantilla
- migration: tabla course_templates con datos JSON del curso base
- frontend: nueva pantalla /course-templates para guardar y aplicar plantillas
- navegación: acceso desde menú Cursos
2026-04-06 15:34:57 -04:00
Nurfog 516a903497 Refactor audio handling and S3 integration in LMS service
- Removed company-specific template rules from template application logic.
- Enhanced question generation queries to support both 'imported-mysql' and 'imported-material' sources.
- Introduced S3 audio storage functionality, including client setup and audio key generation.
- Updated audio response evaluation to store audio files in S3 or fallback to DB.
- Added new API routes for asset ingestion and ZIP import in CMS service.
- Implemented role-based access control for audio responses in LMS service.
- Created a smoke test script for validating audio roles and permissions.
- Updated frontend to support course selection in audio evaluations.
2026-04-06 09:11:56 -04:00
Nurfog 4afccb89ef feat: Implementar reglas de negocio específicas de la empresa para la composición de plantillas de prueba 2026-04-02 14:15:16 -03:00
Nurfog 2b01d5d3f4 feat: Mejorar la gestión de plantillas de prueba y agregar validaciones para la composición de preguntas 2026-04-02 14:08:48 -03:00
Nurfog 4470e3d20b feat: Añadir selección de cantidad de preguntas en el formulario de plantillas de prueba y mejorar la gestión de edición 2026-04-02 12:21:45 -03:00
Nurfog d0a8e13fb6 feat: Añadir soporte para múltiples tipos de preguntas en la generación de plantillas de prueba y actualizar la interfaz correspondiente 2026-04-02 11:24:33 -03:00
Nurfog 83a25b3d28 feat: Implementar búsqueda de preguntas de respaldo en caso de fallos en la búsqueda semántica 2026-04-02 10:10:58 -03:00
Nurfog 7873c0c831 feat: Mejorar la generación de preguntas con RAG y optimizar el manejo de respuestas de IA 2026-04-01 17:13:30 -03:00
Nurfog 1f01a4a36b feat: Actualizar configuraciones de API y mejorar tiempos de espera en nginx 2026-04-01 16:12:03 -03:00
Nurfog abc6d59276 Refactor code structure for improved readability and maintainability 2026-03-31 16:26:38 -03:00
Nurfog 0bea4173f5 Refactor code structure for improved readability and maintainability 2026-03-31 14:39:04 -03:00
Nurfog 8b792e1d44 feat: Añadir columna organization_id a course_instructors y actualizar migraciones para alinear con el modelo compartido 2026-03-31 13:40:37 -03:00
Nurfog e4866c6dee feat: SAM integration, deployment scripts, and audio response enhancements
- Add SAM (Sistema de Administración Académica) integration with sync endpoints
- Add deployment automation (deploy.sh, remote-setup.sh, setup-nginx-ssl.sh)
- Add nginx proxy configuration for SSL with Let's Encrypt
- Add audio response support for student lessons (migrations, handlers)
- Add audio evaluations admin page
- Update CORS to support wildcard subdomains for norteamericano.cl
- Add comprehensive deployment documentation (DESPLIEGUE.md, ManualDeConfiguracion.md)
- Update docker-compose.yml with nginx-proxy and acme-companion services
- Remove outdated documentation files

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-27 09:20:23 -03:00