Commit Graph

105 Commits

Author SHA1 Message Date
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 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 63620e9752 feat: improve collaborative document handling and token management 2026-04-27 16:23:07 -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 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 7a2afce796 Refactor code structure for improved readability and maintainability
Co-authored-by: Copilot <copilot@github.com>
2026-04-27 13:55: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 e72f479639 feat: add PWA support with service worker, offline sync, and connectivity banners
- Added PWA icons for 192x192 and 512x512 resolutions.
- Implemented service worker (sw.js) for caching static assets and handling fetch requests.
- Created ConnectivityBanner component to notify users of online/offline status.
- Developed OfflineSyncPanel component to manage and display offline sync status.
- Introduced PwaInstallPrompt component to prompt users for PWA installation.
- Added PwaRegistration component to handle service worker registration and online event handling.
- Created AdminAiAuditPage for AI audit logs with filtering and review functionality.
- Developed AdminDataEthicsPage to display AI data ethics summary and recent events.
2026-04-24 09:59:57 -04:00
Nurfog 0d6f1c9f9c feat: implement password reset functionality and global search feature
- Added forgot password and reset password APIs in the LMS service.
- Created database migrations for password reset tokens and xAPI statements.
- Implemented global search functionality with indexing for courses, lessons, discussions, and announcements.
- Developed frontend pages for forgot password and reset password.
- Introduced SCORM player component to handle xAPI statements tracking.
2026-04-22 16:44:03 -04:00
Nurfog 44facf7f4a Refactor code structure for improved readability and maintainability 2026-04-14 16:20:02 -04:00
Nurfog 169a0a18a2 feat: fixing certificate and block 2026-04-14 13:07:45 -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 5e80949269 fix(auth-ui): hide private navigation links until user logs in 2026-04-09 13:00:33 -04:00
Nurfog f2cae88a3b fix(learning): persist AI feedback, improve rubric typing UX, and prevent lesson action overlap 2026-04-09 12:02:53 -04:00
Nurfog 9929ff38fb feat(config): disable code-lab options and hide transcripts for graded audio responses 2026-04-09 11:46:12 -04:00
Nurfog c7018e3daf chore(ui): remove branding debug logs from frontend contexts 2026-04-09 10:54:58 -04:00
Nurfog 1ed5f4a511 fix(feedback): improve light-mode contrast and add resilient AI feedback fallback 2026-04-09 10:43:08 -04:00
Nurfog bdac55bbc7 fix(learning): prioritize lesson content on small screens 2026-04-09 10:29:32 -04:00
Nurfog 3fcb5696a1 fix(ui): move mobile overlays outside backdrop-filter elements to fix stacking context 2026-04-09 10:19:21 -04:00
Nurfog ac3434454b fix(ui): mobile nav menus, light-mode contrast for Combobox, AppHeader and globals
- Studio Navbar: add hamburger button + slide-out sidebar for mobile
- Studio Combobox: replace dark-hardcoded colors with light/dark variants
- Experience AppHeader: fix low-contrast borders/text/icons in light mode;
  mobile sidebar now uses bg-white/bg-gray-900 instead of glass-only
- Experience globals.css: glass-card hover visible in light mode;
  scrollbar thumb visible in light mode (rgba black instead of white)
2026-04-09 09:54:38 -04:00
Nurfog 64a9fd6ca2 feat(badges): add GitHub and LinkedIn badge SVGs 2026-04-09 09:36:28 -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 66bfb34d34 feat(deploy): export domain variables for docker-compose and improve database initialization logic 2026-04-07 14:40:58 -04:00
Nurfog 00239791e9 feat: Optimizar Dockerfile con cachés para mejorar la construcción de imágenes 2026-04-06 11:20:13 -04:00
Nurfog 255033040b feat: Actualizar .dockerignore para incluir secretos de TLS/ACME y modificar el Dockerfile para usar la imagen de Rust 1-bookworm 2026-04-06 10:08:00 -04: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 212832fdda feat: Añadir lógica condicional para la URL de la API CMS y mejorar la configuración de Nginx 2026-03-31 12:55:12 -03:00
Nurfog 2d2ea216e0 feat: Añadir configuración de Nginx para el API de LMS y ajustar las rutas en el frontend de OpenCCB 2026-03-31 12:32:55 -03:00
Nurfog d331381efd feat: Mejorar configuración de Nginx para manejar rutas de API y autenticación, y ajustar la lógica de URLs en el cliente 2026-03-31 11:32:16 -03:00
Nurfog 2d54d6abfc feat: Añadir scripts para generar y sincronizar archivos .env, actualizar configuraciones de Docker y mejorar el despliegue en producción 2026-03-31 10:10:44 -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
Nurfog ef213a61a0 fix: Quiz score submission - use correct submitScore method
- QuizPlayer: Fixed method name from submitLessonScore to submitScore
- Lesson page: Fixed method name and parameter order
- submitScore signature: submitScore(userId, courseId, lessonId, score, metadata)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-23 13:29:46 -03:00
Nurfog 5185c07092 fix: Experience lesson blocks rendering from content_blocks field
- Changed from lesson.metadata.blocks to lesson.content_blocks
- Backend stores blocks in content_blocks column, not metadata
- Fixes issue where only first block was showing in lessons with multiple exercises

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-23 13:16:18 -03:00
Nurfog 2ff06ee7ae feat: i18n full support, responsive UI, multi-model AI config, and bug fixes
Major Features:
- Internationalization (i18n) with auto-detection for ES/EN/PT
- Mobile-first responsive design for Studio and Experience
- Multi-model AI configuration (llama3.2:3b, qwen3.5:9b, gpt-oss:latest)
- Course language configuration (auto-detect or fixed per course)

Backend Changes:
- shared/common: ModelType enum for intelligent model selection
- LMS: log_ai_usage function migration (fix chat tutor 500 error)
- LMS/CMS: course language config fields (language_setting, fixed_language)
- LMS: /courses/{id}/language-config endpoint for language detection

Frontend Changes:
- Experience: Enhanced i18n with browser language detection
- Experience: Audio recording with HTTPS check and error handling
- Studio: Memory game with unique pair IDs and debug logging
- Studio: Expanded translations (250+ keys for ES, EN, PT)
- Both: Language selector in headers (mobile responsive)

Documentation:
- AI_MODELS_CONFIG.md: Multi-model configuration guide
- RESPONSIVIDAD_GUIA.md: Mobile-first design patterns
- I18N_RESPONSIVIDAD_IMPLEMENTACION.md: Implementation details
- DEBUG_AUDIO_RECORDING.md: Audio troubleshooting guide
- DEBUG_MEMORY_GAME.md: Memory game debugging steps

Bug Fixes:
- Fix chat tutor 500 error (missing log_ai_usage function)
- Fix audio recording (HTTPS check, browser compatibility)
- Fix memory game pair IDs (unique ID generation)
- Fix HotspotBlock TypeScript errors

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-23 12:24:22 -03:00
Nurfog be699ad6ab feat: token count implement 2026-03-17 12:07:56 -03:00
Nurfog f9f1238310 feat: Implement health checks, rate limiting, and security headers for services, update Node.js versions, and add Prettier configuration for frontend. 2026-03-12 17:09:05 -03:00
Nurfog 2fe6dcea59 feat: Implement default branding synchronization and improve API header handling. 2026-03-09 17:55:10 -03:00
Nurfog bde5be22e7 feat: Introduce AI code hinting, enforce single-tenant organization model, and add a Code Lab block component. 2026-03-09 17:24:15 -03:00
Nurfog b9c17ce67b feat: Add Mermaid diagram block with AI generation capabilities to lessons. 2026-03-09 14:45:52 -03:00
Nurfog bc5b240984 feat: Implement AI-generated Role Playing and Hotspot interactive content blocks with UI and service integration. 2026-03-09 13:46:47 -03:00
Nurfog 7406de9a1b Remove AI image generation functionality from CMS and expand Docker ignore rules. 2026-03-09 10:06:26 -03:00
Nurfog 01c54429a0 feat: Introduce course marketing features with dedicated metadata, image generation, and UI in both studio and experience apps. 2026-03-04 15:41:34 -03:00
Nurfog fe730998a9 Update TypeScript build information. 2026-03-02 14:46:19 -03:00
Nurfog 420003f2d5 feat: Allow super-admins to retrieve courses across organizations and update navigation link styles to text-sm and text-slate-600. 2026-03-02 11:59:38 -03:00
Nurfog 9abe631782 refactor: apply nav-link-standard utility class to standardize navigation link styling across components. 2026-03-02 11:37:31 -03:00
Nurfog 81e1830563 feat: Implement dark mode styling across UI components and update README with roadmap and system requirements. 2026-03-02 11:29:55 -03:00