-
Notifications
You must be signed in to change notification settings - Fork 556
Releases: chamilo/chamilo-lms
v1.11.40
Chamilo 1.11.40 is a security and bugfix release on top of 1.11.38. For any significant change, please check the 1.11.30 release notes.
Release name: Quimper
For changelog details, please check https://11.chamilo.org/documentation/changelog.html
Assets 4
v2.0.2
Second patch release of Chamilo 2.0, addressing a packaging mistake which (erroneously) included the .env file, risking blanking existing configurations on update from previous 2.0 versions.
Assets 4
v2.0.1
First patch release of Chamilo 2.0, addressing multiple security vulnerabilities, fixing installation issues, and refactoring internal components for improved stability and performance.
Full Changelog: v2.0.0...v2.0.1
Assets 4
v2.0
Version 2.0 is a major stable version that follows v1.11.*, and in particular the release of v1.11.38.
Although we have tested the migration from 1.11 to 2.0, we recommend users wait for version 2.1 (in a few months) before migrating any large-sized Chamilo portal to 2.0, as this version might suffer from some uncaught issues bound to the use of a newer version with many new dependencies.
New projects should start using Chamilo 2.0 straight away. It's full suppport for PHP 8.2 and PHP 8.3 and its single-folder permissions setting makes it much easier to install today than Chamilo 1.11.
Synthesis
This version has:
- complete support for more than 60 languages
- complete support for PHP 8.2 & 8.3
- integrated support for 5 AI models (chat, image and video generation, document treatment)
- integrated support for different authentication platforms
- integrated support object-type storage services
- many more API services
- many integrated Symfony, VueJS and Tailwind elements
New features
This version includes the following new features:
- Admin: Add access URL chooser for users with multiple active portals
- Admin: Extra fields now have a description field, which allows you to show what you expect from users filling those.
- Admin: Added the roots of a role-based permissions system. Not functional yet but should be done by stable. Load through /permissions (not the definitive path) to get a sneak peak.
- Admin: Added pre-deletion of users as safeguard against user mistakes .
- Admin: Privacy: Add auto-remove option to delete extra fields when anonymizing users .
- Admin: Added "News from Chamilo" and "Support" blocks (can be disabled) in the admin section. This will allow us to communicate with admins about updates, security updates and global events, between others, in a non-intrusive way.
- Admin: Allow admin settings in the web interface to be overwritten by settings in config/settings_overrides.yaml
- Admin: Add course/session report with links to tools
- Admin: Add duplicate_specific_session_content_on_session_copy setting to automate the re-using of session-specific content when copying a session
- Admin: Add content type items report
- Admin: Add reminder for GDPR article 19 on terms edit
- Admin: Add support for third-party data exchanges in GDPR section
- Admin: Add advanced MultiURL management for courses
- Admin: Add session admin custom home page
- Admin: Add "validation" server type to configuration settings and generalize variable processing
- Admin: Add settings for Chamilo latest news and support block
- Admin: Add global setting hosting_limit_users_per_course to limit the number of possible subscriptions to a course (only useful in communitarized portals where there is some abuse)
- Admin: Add setting for session admin certificate download and expand sidebar menu for single item
- Admin: Add JSON template system and migration
- Admin: Add bulk user assignment and removal from URLs via CSV import
- Admin: Add CSV user import/removal with breadcrumbs for access URLs
- Admin: Add security section with report on failed logins
- Admin: Enable logo changes with custom styles in colors page
- Admin: health check box on admin page
- Admin: Add icon with setting category and variable in settings page (only in dev server mode)
- Admin: Add new page to assign one auth source to multiple users
- Admin: Add question bank direct menu access to the question manager
- Admin: Enforce global users-per-course limit on course subscriptions
- Admin: Add support for S3-compatible storage endpoints
- Admin: Recover users list by language feature in session-list
- Admin: Create Tracking block to gather tracking-related entries in admin section
- Admin: Add icons list link to System block for developers
- Admin: Add introduction text to admin dashboard
- AI: Add support for Gemini, Grok, Mistral
- Announcement: Add event reminders to event created from announcement .
- Announcement: Add support to send announcement to a class
- API: Add API endpoint for Documents usage controller
- Assignment: Add required file extension option
- Assignment: Add AI task grader
- Assignment: Add labels to assignment action icons
- Attendance: Add duration to attendance events (e.g. set each attendance session to '60 minutes' or so)
- Attendance: Add multi-level attendance grading (present, absent, late, very late, justified absence)
- Attendance: make an attendance complete if participating in 1 date only
- Auth: Add new config params tenant, force_logout, provisioning, update_users, group_id, existing_user_verification_order, deactivate_nonexisting_users, script_users_delta, script_usergroups_delta and group_filter_regex for Azure authentication
- Auth: Add command to synchronize user groups from Azure
- Auth: Add LDAP authenticator
- Auth: Allow authentication through LDAP in login form
- Auth: Add config param to force one login method only
- Auth: Add SCIM support
- Auth: Add support for preferredLanguage attribute in Azure authenticator
- Calendar: Added collective events management in calendar (invite other users as participants to the event)
- Calendar: Add clickable course links in agenda events
- Calendar: Add a color of your choice in the agenda
- Calendar: Add session plan and calendar schedule views
- Catalogue: Add "Catalogue access" tab to restrict visibility by usergroup
- Chat: Add global chat AI tutor: exam lock, prompt, and history
- Classes: Add option to unsubscribe a class from a course without removing students
- CMS: Added CMS-type management of additional pages, including contact forms. A default install will add empty Home, FAQ, Demo and Contact pages).
- Completed translations with AI for all languages
- Console: Add import-access-url command to import URLs from an XLSX file
- Course: Add auto-launch with navigation back to course home
- Course: Implement infinite scroll to load more than 30 courses on your courses list
- Course: Add email setting to notify students on manual course subscription
- Course: Add improvements and fixes in category management
- Course: Add toggle to show/hide "(free)" non-enrolled users in tracking table
- Course homepage: Added possibility to re-order tools on course homepage.
- Course progress: Add course home progress overview
- Display: Add blocks decoration on admin page
- Display: Show loading indicator in modal before content is loaded
- Display: Update default avatar to SVG to avoid pixelated default pictures
- Display: Add meta tag identifying Chamilo 2 as the underlying app
- Document: Add support for URL-specific document variations. One document can be presented as a variation in a secondary URL. This requires editing from the main URL's document tool.
- Document: Add LP usage warning when deleting documents
- Document: Safely attach shared files to multiple courses
- Document: Implement genAI video generation
- Document: Implement genAI image generation
- Document: Add AI content analyzer
- Documentation: Add Windows installation guide
- Exercise: Add export attempts' results to PDF
- Exercise: Add email sending for reviewed attempts
- Exercise: Show question usage across courses/sessions in edition view
- Exercise: Implement AI-Powered Open Answer Grading
- Exercise: Add bulk PDF export and ZIP download
- Exercise: Add media questions
- Exercise: Implement Page Break question type and AJAX navigation
- Exercise: Add cancel/restore steps to annotation-type question
- Exercise: Generate test from document (with AI helpers)
- Extrafield: Support duration extra field (hh:mm:ss)
- Glossary: Add AI glossary term generator
- Gradebook: Add minimum score validation and highlight unmet scores in gradebook. This allows teachers to set a minimum limit (an exclusion score) to gradebook items.
- Gradebook: Add support for min_score in Evaluation forms
- Gradebook: Add publish flag to GradebookCertificate
- Gradebook: Add certificate validity (in days) to gradebook (add certificate_validity_period column to gradebook_category)
- Install: Added installation logs for better debug capabilities on install/migrations. Migrations can now be executed step by step if needed
- Install: Add .env detector in public/main/install/index.php
- Internal: Add catalogue visibility filter to decide which courses or sessions appear there or not, and add toggle icon for courses. If no course or session is selected, all courses and sessions appear. If any course or any sessions is selected/toggled from the admin list of courses or sessions, only this one appears
- Internal: Enable Encore versioning for better JS cache management (allows JS libraries to work automatically with URLs that include a new version number on each cache update)
- Internal: Add support for reverse proxies by taking the TRUSTED_PROXIES settings from .env into account (allows Chamilo to fully work behind a reverse proxy handling the SSL layer, between others)
- Internal: Add new user registration report with date range and creator stats
- Internal: Add tracking to all resource event
- Internal: Add command to deactivate users without active sessions
- Internal: Add setting to limit number of same e-mails
- Internal: Add OpenAPI description for User resource
- Internal: Add AzureSyncState entity. Allows saving the last state of synchronization by commands
- Internal: Add Query Caching Support and Demo Endpoint
- Internal: Create default callback script that enables a videoconference system to send activity information back
- Internal: Add script to check for missing language terms
- Internal: Add user/course progress, certificates & gradebook stats
- Internal: Centralize TinyMCE config via tiny-settings.js (Vue + legacy)
- Internal: Add support for IIS web server (web.config)
- Internal: Add useConfirmation composable for reusable confirmation dialogs
- Internal: Add public legal links to l...
Assets 4
v2.0.0 RC 3
What's Changed
- Internal: Fix typo in renamed editor settings by @christianbeeznest in #7932
- Bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #7927
- Course: Improve course import and backup handling - refs #6958 by @christianbeeznest in #7934
- [c2] LP: Deprecate and disable AICC support functionality by @AngelFQC in #7936
- Course: Improve Moodle backup export compatibility - refs #6958 by @christianbeeznest in #7937
- Course: Fix C2 MBZ document import and asset path handling - refs #6958 by @christianbeeznest in #7942
- Language #fix translate HTML in document to show the content in the s... by @NicoDucou in #7941
- Course: improve MBZ backup and restore coverage for Chamilo resources - refs #6958 by @christianbeeznest in #7952
- Exercise: Fix Aiken AI import and question cleanup - refs #7577 by @christianbeeznest in #7954
- Course: Use course description tool content in catalogue popup - refs #7344 by @christianbeeznest in #7957
- Display: Truncate course card titles to one line by @christianbeeznest in #7958
- Convert skills ranking page to Vue by @ywarnier in #7959
- User: Fix terms and conditions fallback and personal data flow - refs #7944 by @christianbeeznest in #7960
- User: Fix account edit password flow and required field markers - refs #7944 by @christianbeeznest in #7963
- Internal: Rename Azure extra field labels to EntraID - refs #7944 by @christianbeeznest in #7964
- Convert admin users list from legacy to Vue by @ywarnier in #7965
- Internal: Improve access detail reports and fix learner PDF flow- refs #7944 by @christianbeeznest in #7966
- Admin: Create Tracking block to gather tracking-related entries from other locations on and in the admin section by @ywarnier in #7967
- Listicons by @ywarnier in #7968
- Catalogue fixes - refs #7344 by @ywarnier in #7969
- Internal: Include never-logged users in inactive reporting - refs #7944 by @christianbeeznest in #7971
- Admin: Fix exercise category report grid rendering - refs #7944 by @christianbeeznest in #7973
- Message: Add audio preview for message attachments - refs #7944 by @christianbeeznest in #7974
- Social: Fix friends breadcrumb label - refs #7944 by @christianbeeznest in #7975
- Social: Fix friendship invitation message locale - refs #7944 by @christianbeeznest in #7976
- Security: Add access filters to a number of services - refs #7671 by @ywarnier in #7972
- Skill: Fixes to skill wheel by @ywarnier in #7977
- Plugin: Add ONLYOFFICE support to documents and learnpath - refs #7533 by @christianbeeznest in #7978
- Internal: Fix OnlyOffice config signing and C2 file persistence - refs #7533 by @christianbeeznest in #7979
- Plugin: Prevent unsafe reloads in OnlyOffice editor - refs #7533 by @christianbeeznest in #7980
- Plugin: OnlyOffice: add contextual return URL for documents and learnpath - refs #7533 by @christianbeeznest in #8020
- Plugin: OnlyOffice: disable go-back in embedded learnpath - refs #7533 by @christianbeeznest in #8021
- Convert legacy course_list.php to Vue by @ywarnier in #8019
- Courselist by @ywarnier in #8022
- Admin: Fix compatibility with legacy requests that use a link to the admin course list with a keyword by @ywarnier in #8023
- Sessionlist by @ywarnier in #8024
- Internal: fix: allow Symfony-role admins to edit users without legacy admin table entry by @christianbeeznest in #8025
- Course: Adapt document path lookup for C2 export - refs #7400 by @christianbeeznest in #8026
- Admin: Optimize session list loading by @ywarnier in #8027
- Security: Filter LDAP injection possibility in query strings - refs #7583 by @ywarnier in #8028
- Adminlistdesign by @ywarnier in #8030
- Securehashes by @ywarnier in #8033
- Internal: Convert action icons to BaseButton in admin user/course/ses... by @ywarnier in #8032
- Plugin: Integrate LTI provider and client integration - refs #2741 by @christianbeeznest in #8034
- Sessionlist by @ywarnier in #8035
- Plugin: Improve XApi plugin integration and runtime - refs #2666 by @christianbeeznest in #8038
- Webservice: Move tracking stats endpoints to /api/tracking - refs #23304 by @christianbeeznest in #8018
- Attendance: Enable attendance lock toggle for teachers by @christianbeeznest in #8044
- Internal: fix: rename extra fields breadcrumb from UserFields to Profiling by @christianbeeznest in #8045
- Course: Fix course catalog subscription limit state by @christianbeeznest in #8047
- Learnpath: Fix LP empty document creation and dropdown layout by @christianbeeznest in #8048
- Assigment: Fix assignment feedback access and grading flow by @christianbeeznest in #8049
- Forum: Fix empty forum dates on edit by @christianbeeznest in #8050
- Plugin: Improve LTI provider and fix XApi compatibility by @christianbeeznest in #8051
- Internal: fix: remove eval() RCE vulnerability in decodeSettingArray by @christianbeeznest in #8052
- Plugin: Improve IMS LTI 1.3 external tool setup and validation by @christianbeeznest in #8053
- Plugin: Fix XApi hooks and cron flow in C2 - refs #2666 by @christianbeeznest in #8054
- Plugin: Enhance Pens plugin workflow and management by @christianbeeznest in #8056
- Plugin: Refactor and restore Test2Pdf plugin by @christianbeeznest in #8057
- Plugin: Implement Tour plugin with dynamic steps by @christianbeeznest in #8059
- Plugin: Adapt CardGame plugin for C2 dashboard widget by @christianbeeznest in #8060
- Plugin: Hide non-stable plugins from admin list by @christianbeeznest in #8062
- Plugin: Adapt PauseTraining plugin for C2 by @christianbeeznest in #8064
- Plugin: Refine plugin regions UI and selected card focus by @christianbeeznest in #8065
- Plugin: Render pre_footer plugins in Vue and stabilize CardGame loading by @christianbeeznest in #8066
- Plugin: Improve H5P import plugin flow and rendering - refs #2667 by @christianbeeznest in #8067
- Document: Implement documents download-all ZIP export - refs #4732 by @christianbeeznest in #8069
- Internal: Expose helper text for extra fields - refs #1753 by @christianbeeznest in #8070
- Course: Exclude group-specific data from course backup/restore - refs #3980 by @christianbeeznest in #8071
- Security: Add MIME-type allowlist to prevent XSS in social post attachments by @AngelFQC in #8068
- Plugin: CardGame: Add conditionally render from backend by @AngelFQC in #8072
- Plugin: Polish BuyCourses plugin translations and validate payment flow - refs #2614 by @christianbeeznest in #8074
- Plugin: BuyCourses: add missing files for process flow - refs #2614 by @christianbeeznest in #8075
- Internal: Fix personal file access in social posts by @christianbeeznest in #8076
- Social: Improve social wall loading and navigation - refs BT#23337 by @christianbeeznest in https://github.com/chamilo/chamilo-l...
Contributors
Assets 4
v1.11.38
Chamilo 1.11.38 is a security and bugfix release on top of 1.11.36. For any significant change, please check the 1.11.30 release notes in the documentation/changelog.html.
What's Changed
- Security: Many fixes, including to CRITICAL vulnerabilities
- Course: Improve Moodle export for quiz questions and embedded files - refs BT#21977 by @christianbeeznest in #7674
- LP: Deprecate and disable AICC support functionality by @AngelFQC in #7935
- Course: Fix Moodle export titles, visibility and embedded images - refs BT#21977 by @christianbeeznest in #8017
Full Changelog: v1.11.36...v1.11.38
Assets 4
v2.0.0 RC 2
This is a Release Candidate (RC), meaning it is NOT finished yet, but it is reasonably stable and can be considered (carefully) for production. It can be used in production but only in a controlled environment with skilled PHP engineers around in case something goes wrong. To install this beta version for testing, please read /README.md.
What's Changed
- Internal: Avoid logging AI base provider fallback by @christianbeeznest in #7395
- Course: Moodle export: add activities meta exports (Announcements, Attendance, Calendar, Gradebook, etc.) - refs #6958 by @christianbeeznest in #7027
- Exercise: Fix legacy checkbox styling (spacing + primary checked state) - refs #7378 by @christianbeeznest in #7396
- Dropbox: Improve Dropbox UI: single upload button + received description + bulk actions - refs #7391 by @christianbeeznest in #7397
- Admin: Fix session course copy component + refresh session enrolment UI - refs #3655 by @christianbeeznest in #7403
- Learnpath: LP final item: filter skills by gradebook category - refs BT#23100 by @christianbeeznest in #7409
- Social: Fix IDOR authorization in SocialController legal/privacy endpoints by @christianbeeznest in #7410
- User:Improve user information page layout (Tailwind redesign) by @christianbeeznest in #7413
- Bump tar from 7.5.3 to 7.5.6 by @dependabot[bot] in #7405
- Internal: Fix exam reporting tool visibility (use ResourceLink visibility) by @christianbeeznest in #7416
- Internal: Improve tracking reports UI & responsive grids by @christianbeeznest in #7417
- Internal: Fix missing Blueimp File Upload CSS warnings (conditional asset include) by @christianbeeznest in #7418
- Internal: Fix breadcrumb consistency and legacy URL normalization by @christianbeeznest in #7419
- Announcement: Fix announcements & email attachments handling by @christianbeeznest in #7420
- Link: Improve links UI: icon-only actions, PDF export, and drag-and-drop reordering by @christianbeeznest in #7422
- Internal: Fix ResourceListener currentUser handling for PersonalFile in CLI/migrations by @christianbeeznest in #7414
- Internal: Fix course access tracking: prevent detached User persist errors by @christianbeeznest in #7423
- Learnpath: Fix student empty-state message in Learning Paths by @christianbeeznest in #7424
- User: Fix profile edit issues (hide deprecated theme, resolve CSRF) by @christianbeeznest in #7425
- Admin: Add health check file permissions checks - refs #7352 by @christianbeeznest in #7426
- Course: Improve course settings form defaults and UI behavior - refs #7412 by @christianbeeznest in #7427
- Course: Fix course tools API: handle missing plugin tool handlers & normalize tool names - refs #7415 by @christianbeeznest in #7428
- Learnpath: Implement SCORM package replacement (LP update) - refs #5151 by @christianbeeznest in #7429
- Internal: Improve teacher access permissions for reporting pages by @christianbeeznest in #7436
- Course: Allow using a course as a template for new course creation - refs BT#22584 by @christianbeeznest in #7439
- Session: Enable session duplication with session-specific content - refs BT#22254 by @christianbeeznest in #7440
- Search: Fix xapian search UI: accents and in-word highlighting - refs #7437 by @christianbeeznest in #7441
- Security: Add controller voters & tighten access checks - refs #7407 by @christianbeeznest in #7442
- Course: Fix session-specific course introduction display - refs #7443 by @christianbeeznest in #7446
- Assigment: Fix Doctrine detached User when creating assignments by @christianbeeznest in #7447
- Internal: Fix migration: fallback rewrite for legacy /courses/*/document links by @christianbeeznest in #7448
- Internal: Fix course_homepage intro migration for session context by @christianbeeznest in #7449
- Exercise: Improve exercise management: teacher visibility icon + question pool fixes by @christianbeeznest in #7450
- Exercise: Fix exercise list query parameter binding (Doctrine too many parameters) by @christianbeeznest in #7452
- Document: Show documents table loading spinner immediately by @christianbeeznest in #7453
- Internal: Improve user profile layout by @christianbeeznest in #7454
- Bump phpunit/phpunit from 9.6.31 to 9.6.33 by @dependabot[bot] in #7451
- Bump tar from 7.5.6 to 7.5.7 by @dependabot[bot] in #7465
- Session: Fix session-specific item copy in course duplication by @christianbeeznest in #7471
- Install: Fix install redirect when session/DB not ready - refs #7224 by @christianbeeznest in #7330
- User: Fix user profile timezone field visibility by @christianbeeznest in #7474
- User: Fix missing sec_token after login redirect by @christianbeeznest in #7475
- User: Remove double validation step from registration form - refs #7459 by @christianbeeznest in #7478
- Course: Fix direct registration redirect to course/test - refs #7455 by @christianbeeznest in #7479
- Course: Alignment of addLabel() item in course settings - refs #7456 by @christianbeeznest in #7480
- Course: Fix external shortcut links on course homepage - refs #7467 by @christianbeeznest in #7482
- Learnpath: fix navigation & loader when TOC is hidden - refs #7469 by @christianbeeznest in #7483
- Document: Fix documents listing in session to include base course content - refs #7460 by @christianbeeznest in #7485
- Bump jspdf from 4.0.0 to 4.1.0 by @dependabot[bot] in #7484
- User: Improve Courses/Sessions list loading - refs #3855 by @christianbeeznest in #7487
- Internal: Migration: prevent document duplicates and improve file link rewrite by @christianbeeznest in #7477
- Internal: Add cookie consent banner and legal menu links - refs BT#23212 by @christianbeeznest in #7489
- Parkur: Fix feature scenarios for Parkur tests by @Ilyassbennanii in #7457
- Internal: Hide system folders in Documents tool using platform settings by @christianbeeznest in #7494
- Internal: Add public legal links to login and sidebar - refs BT#23212 by @christianbeeznest in #7495
- Course: Fix duplicate assignments when copying session-only content - refs BT#22588 by @christianbeeznest in #7496
- Course: Fix session course copy: gradebook restore + wiki home content - refs BT#22588 by @christianbeeznest in #7499
- User: Use registration.allow_double_validation_in_registration for double validation - refs #7459 by @christianbeeznest in #7500
- Learnpath: Fix SCORM LP top menu overlap and next navigation - refs #7469 by @christianbeeznest in #7501
- Gradebook: Fix gradebook scoring for "Require unique presence" attendance - refs #7214 by @christianbeeznest in #7502
- Admin: Enhance statistics pages UI by @christianbeeznest in #7503
- Admin: Improve admin questions listing (filters, pagination, previews, and safe cross-course usage mapping) by @christianbeeznest in #7504
- Learnpath: Fix Chamilo LP next/prev navigation when TOC is hidden - refs #7469 by @christianbeeznest in #7508
- Gradebook: Fix attendance normal mode max score in gradebook - refs #7214 by @christianbeeznest in #7509
- User: Fix mail confirmation in registration settings - refs #7506 by @christianbeeznest in #7510
- Admin: Improvements to admin stats - refs #7505 by @chr...
Contributors
Assets 4
v1.11.36
Chamilo 1.11.36 is mostly a security release on top of 1.11.34. For any significant change, please check the 1.11.30 release notes.
Full Changelog: v1.11.34...v1.11.36
Assets 4
v1.11.34
Chamilo 1.11.34 is mostly a security release on top of 1.11.32. For any significant change, please check the 1.11.30 release notes.
What's Changed
- Session: Replace session course ordering by arrows for drag and drop on resume_session and always available - refs BT#22724 by @NicoDucou in #6425
- Tracking: add global parameter to enable theoretical time for course on myStudent tracking and resume session - refs BT#22723 by @NicoDucou in #6434
- Plugin: Fix missing icon for Google Meet plugin on course homepage by @christianbeeznest in #6491
- User: Enforce unique extra‐field per URL on user creation - refs BT#22802 by @christianbeeznest in #6512
- User: Improve user import and extra‐field validation - refs BT#22802 by @christianbeeznest in #6514
- Fixpendingattemptexcelreport by @yverhenne in #6488
- Feature : add PDF export to time report by @yverhenne in #6483
- Ticket : add subject to ticket xls export by @yverhenne in #6494
- Fix total courses progress calculation in mystudent.php by @yverhenne in #6499
- Allow category managers to view all tickets in his category by @yverhenne in #6501
- add-date-filter-to-pending.php by @yverhenne in #6526
- Tracking:#Enable improved tracking section in main/mySpace/myStudents.php by @yverhenne in #6531
- Tracking: #improve-option-summary-section-in-mystudent.php by @yverhenne in #6600
- Add sorting by date and search by user in pending.php by @yverhenne in #6672
- improve search and export ticket by @yverhenne in #6691
- mystudent.php : add optional subscription column in student session details by @yverhenne in #6776
- Exercise: Prevent duplicate question creation on Hotspot zone validation - refs BT#22899 by @christianbeeznest in #6788
- User: Account unification: safe merge of duplicates by extra field - refs BT#22960 by @christianbeeznest in #6798
- Adjusted subscribeUsersToSession to preserve course-level unsubscript... by @yverhenne in #6857
- Learnpath: Enable drag-and-drop reordering for categories and lessons - refs BT#22963 by @christianbeeznest in #6912
- Course description: Remove XSS when showing title by @AngelFQC in #6662
- Allow-teachers-to-access-tracking-of-all-courses by @yverhenne in #6934
- improve option Show subscription column by @yverhenne in #6960
- Tracking: Add multi-session selector and bulk certificate export in session filter - refs BT#23109 by @christianbeeznest in #7110
- Tracking: Use advanced session multiselect in certificates session report - refs BT#23109 by @christianbeeznest in #7115
- Course: Fix course backup import for accented document paths - refs BT#23090 by @christianbeeznest in #7117
- Données corrompues lors des copies des questions MATCHING_COMBINATION... by @LudiscapeXApi in #7136
- Course: Moodle export: mirror Documents tree; use LP item titles; restore document items - refs BT#21977 by @christianbeeznest in #6923
- Learnpath: Fix course backup import and LP restore flow - refs BT#23189 by @christianbeeznest in #7472
- Elfinder file manager: Fix Multi-URL Mode Document Access Issue in Chamilo 1.11.x by @juancp-contidosdixitais in #5657
- Tracking: Fix visibility of courses for HR managers - refs #7113 by @ywarnier in #7566
- Survey: Normalize survey_type to int to avoid strict type mismatch on PHP 8.3 - refs #6841 by @ywarnier in #7567
- Learnpath: Remove validation of quiz score against max score (only min score matters) - refs #6745 by @ywarnier in #7572
- Fix conditional check for quiz result validation by @LudiscapeXApi in #6745
- New Feature: Add phone number search to user search functionality by @contidos in #7132
- 7176 by @ywarnier in #7574
- Remove invisible Unicode characters that can cause by @LudiscapeXApi in #7176
- 7196 by @ywarnier in #7575
- Update customcertificate to allow access to Sessions Admins by @nosolored in #7461
- Update customcertificate to allow access to Sessions Admins by @nosolored in #7462
- Course: Fix Moodle export file references and LP activity mappings - refs BT#21977 by @christianbeeznest in #7593
- PHP8 compatibility improvements by @ywarnier in #7602
- Security: Add validation in personal course categories by @ywarnier in #7628
New Contributors
- @yverhenne made their first contribution in #6488
- @contidos made their first contribution in #7132
Full Changelog: v1.11.32...v1.11.34
Contributors
- @ywarnier
- @AngelFQC
- @nosolored
- @NicoDucou
- @LudiscapeXApi
- @contidos
- @christianbeeznest
- @juancp-contidosdixitais
- @yverhenne
Assets 4
v2.0.0 RC 1
What's Changed
- Documents: Implement genAI image and video generation - refs #7305 by @christianbeeznest in #7353
- Attendance: make an attendance complete if participating in 1 date only - refs #7214 by @christianbeeznest in #7356
- User: Fix error loading flatpickr.min.css in profile edition - refs #7242 by @christianbeeznest in #7357
- Dropbox: Fix Dropbox uploader crash caused by reactive Uppy instance - refs #7345 by @christianbeeznest in #7360
- Internal: Fix ResourceListener creator resolution to prevent duplicate user inserts by @christianbeeznest in #7361
- Survey: Fix survey tool broken due Gradebook::is_active error - refs #7346 by @christianbeeznest in #7362
- Internal: Fix multiple browser loads of header-logo on homepage - refs #7351 by @christianbeeznest in #7363
- Internal: Add local media selection in WYSIWYG editor - refs #7355 by @christianbeeznest in #7364
- Internal: Service worker: disable offline storage and avoid intercepting HTML/API routes by @christianbeeznest in #7366
- Chat: Add AI tutor conversation and message tables - refs #7306 by @christianbeeznest in #7367
- Fix E_NOTICE in api_htmlentities function about deprecation with mbstring by @AngelFQC in #7368
- Gradebook: Fix LP final item certificate and skill issuance - refs BT#23100 by @christianbeeznest in #7119
- CI: Add illustrations for course data filler by @ywarnier in #7370
- User: Fix multi-URL user autocomplete scope - refs #3832 by @christianbeeznest in #7249
- Internal: Fast attendance migration + safe cleanup flags - refs BT#23159 by @christianbeeznest in #7373
- Chat: Add global chat AI tutor: exam lock, prompt, and history - refs #7306 by @christianbeeznest in #7369
- Glossary: Add AI glossary term generator - refs #7309 by @christianbeeznest in #7377
- Assignment: Add AI task grader - refs #7307 by @christianbeeznest in #7382
- Documents: Add AI content analyzer - refs #7308 by @christianbeeznest in #7384
- Portfolio: Fixes related to resource structure #6836 by @AngelFQC in #7375
- Documents: Improve genAI image and video generation - refs #7365 by @christianbeeznest in #7385
- Bump tar from 7.5.2 to 7.5.3 by @dependabot[bot] in #7387
- Exercise: Fix multiple answer True/False radios visibility - refs #7378 by @christianbeeznest in #7388
- Internal: Fix doc picker mode switch and document move after resource_link changes - refs #7355 by @christianbeeznest in #7389
- Dropbox: Fix dropbox download for non-ASCII filenames - refs #7345 by @christianbeeznest in #7390
- Close sessions earlier in AJAX calls (legacy) by @ywarnier in #7383
- Internal: Migrate display.show_tabs from legacy CSV to JSON by @christianbeeznest in #7392
- Internal: Remove deprecated tool_visible_by_default_at_creation setting by @christianbeeznest in #7393
- Internal: Fix migrated tracking header/footer extra content settings by @christianbeeznest in #7394
Full Changelog: v2.0.0-beta.3...v2.0.0-RC.1