Hello everyone,
The following versions of Totara have now been released:
- 2.9.9
- 2.7.17
- 2.6.34
- 2.5.41
- 2.4.43
- 2.2.49
These versions do contain security fixes and for this reason we strongly recommend upgrading.
Each release also includes bug fixes and improvements, including from the latest Moodle releases.
Thanks to the following people for their contributions to this release:
- Davo Smith at Synergy Learning - TL-9485
- Francis Devine at Catalyst NZ - TL-9086
- Nigel Cunningham at Catalyst AU - TL-8601, TL-9261
Kind regards
Sam Hemelryk
Release 2.9.9 (26th July 2016): Important: TL-9703 This release contains fixes made in Moodle 2.9.9 Moodle 2.9.9 received two fixes as noted below: 1. MDL-53431 tool_monitor: Access control for tool monitor subscriptions Imported as TL-9551 2. MDL-55069 core: escape special characters in email headers Imported as TL-9515 3. MDL-53019 environment: 3.2 requirements added Imported as TL-9556 4. MDL-54564 behat: Wait after hover, to ensure page is ready Imported as TL-9631 5. MDL-54620 ratings: display '0' when aggregate = 0 Imported as TL-9633 Security issues: TL-9340 Fixed access control when deleting calendar subscriptions Users can only delete their own calendar subscriptions. Previously it was possible to craft a special request that would allow you to delete a calendar subscription regardless of whether you were the owner or not. The moodle/calendar:manageownentries capability is now consistently checked. TL-9400 Fixed access control when deleting personal goals A user's personal goals can only be deleted if one of the following conditions is true for the current user: 1. They have the totara/hierarchy:managegoalassignments capability in the system context. 2. They are a manager of the goal's owner and they have the totara/hierarchy:managestaffpersonalgoal capability in the users context. 3. It is one of their own personal goals and they have the totara/hierarchy:manageownpersonalgoal capability in the system context. Previously it was possible to craft a special request that would allow you to delete any personal goal, regardless of whether it was one of your personal goals or not. The relevant capability checks are now consistently applied. TL-9515 Fixed sanitisation of user's firstname and lastname when sending emails Totara was not previously sanitising the users firstname and lastname correct when compiling emails to the user. An authenticated user could therefor alter their firstname or lastname in Totara to contain invalid content including additional email addresses. As their firstname and lastname was not being correctly sanitised this could be abused to send spam to others. The users firstname and lastname is now properly sanitised. References MDL-55069 TL-9668 Improved the security of all repository plugins Previously it may have been possible to perform SSRF attacks on a server through the repository API which was not working with installed repository plugins to sanitise downloaded content. With this update comes a change to the repository API that allows it to work with the repository plugins to ensure that content requested for download is expected and valid. By default any plugin which attempts to use the repository API to download content without implementing the now required get_file() method will stop working as this is deemed a security risk. We are aware that some subscribers do use third party repository plugins, and that this change may stop those plugins from working. Whilst it is our recommendation for those sites to get the affected third party repositories updated to support the new API and downloading of files we have also in 2.9 added a special setting to bypass the lacking support and allow the plugins to function as they once did. This setting is present in 2.9 only and will not be available in 9.0. To enable this setting add the following to your config.php: {code} $CFG->repositoryignoresecurityproblems = 1; {code} Please be aware that adding this setting may open a security hole on your site. We do not recommend adding it. Improvements: TL-8996 Added support for syncing a user's image during SSO login TL-9221 Added the ability to resolve dismissed program exceptions to the completion editor The Program and Certification completion editors now display information about dismissed program exceptions when viewing a user's completion data, and allow dismissed exceptions to be overridden. TL-9265 Added a new filter for Audience Visibility to Course reports Previously a Visibility filter could be added to Course reports, however there was no corresponding Audience Visibility filter for those sites that had Audience Visibility turned on. A new Audience Visibility filter has been added to all Course reports so that those sites that have Audience Visibility turned on can filter by the relevant visibility options. TL-9276 Improved the description of Global Report Restrictions when only one restriction exists If there is only one Global Report Restriction for a user it is automatically applied for that user. This was previously undocumented. The description within the Global Report Restriction user interface has been improved to elude to this behaviour. TL-9314 Improved the information shown when viewing a Certification When a user views one of their certifications, they will see a more verbose description of the status. It is now clear when a user is not required to work on a certification. When working on a specific certification path, only courses in that path are shown (as before), otherwise both paths are shown, rather than trying to show the last path completed (which cannot be calculated under several circumstances). Additionally, a warning has been added, and is shown when the user is due to recertify but the window opening process has not yet occurred. TL-9344 Improved the time allowance strings used for Programs to ease translation TL-9378 Ensured that goal management capabilities are consistently applied Personal goals created by either a site administrator or a user's manager cannot be edited or deleted by the user. Additionally the action icons for actions you can't preform are now greyed out. TL-9383 Improved the performance of sidebar searches within Report Builder For reports which had multi-check filters enabled in the sidebar, such as in the course catalog, item counts shown in the filter were sometimes being queried twice unnecessarily. In cases where there were thousands of items, this had a noticeable effect on performance. These items counts are now only queried once, and only if needed. TL-9433 Developers may now disable editor autosave in forms where it is not desirable Previously it was not possible for the developer to disable autoasaving within an editor when defining a form. A small improvement has been made to allow the developer to pass ['autosave' = false] as an editor option, this gets passed through to the editor initialisation and allows the developer to disable autosaving when defining the form. TL-9456 Plugins can now define Report Builder filters within the plugin space If is now possible for plugins to define their own Report Builder filters for use within their own Report Sources. In order to do this the plugin defines an class called `rb_filter_"filtertype"` in a location it chooses, and then requires the file containing the class within the Report Builder sources that will use it. TL-9483 Fixed Behat file uploads to work in all browsers and in remote selenium instances TL-9484 Added a workaround for missing alert confirmation support in PhantomJS TL-9502 The Course and Activity completion reports now use the standard paging control The Course completion and Activity completion reports now use the standard paging control bar. This helps bring the look and feel of these reports (which are not Report Builder reports) inline with the other reports available in the system. TL-9556 Environment definition updated to reflect Moodle 3.2 requirements TL-9670 Course visibility filters show as not applicable depending on the sites audience visibility setting Bug fixes: TL-7907 Fixed manager approval for Face-to-face direct enrolment when automatic signup is enabled Previously if you had a Face-to-face activity that was configured to require manager approval, within a course with a Face-to-face direct enrolment instance added and configured to automatically sign new users up to all available sessions, then when a new user signed up they would be automatically booked to the session requiring manager approval, bypassing the approval stage. Now the Face-to-face direct enrolment plugin, with automatic signup enabled, correctly respects the manager approval requirements for available sessions. TL-8179 Program and Certification reports now order courseset data correctly The Program and Certification overview reports now ensure that columns displaying courseset information order the content in the same manner that is applied when viewing the Program or Certification content. TL-8555 Recurring courses now respect the tempdir setting When recurring courses were copied during cron, it was assumed that the temp folder was set to its default rather than what was in the 'tempdir' config setting. The temporary backup folder is now created in the location specified by the 'tempdir' setting. This fix also ensures that the copy recurring courses cron task will run when certifications are disabled, but programs are enabled, as recurring courses can only be used within programs. TL-8601 Fixed backup and restore of multi-select and file type Course custom fields TL-8985 Suspending a user no longer cancels past Face-to-face signups Previously if you suspended a user any Face-to-face signups they had made would be cancelled. Even when the Face-to-face session had already been run. Now when a user is suspended only Face-to-face signups for future sessions are cancelled. TL-9056 Fixed program enrolment messages not being sent It was possible that some program and certification enrolment messages were not being sent. This would only occur in the unlikely event that the program messaging scheduled task took some time to run, and that program assignments changed during that time (either by a manual change made in the Assignments interface when there were less than 200 users involved in the program, or due to one of the two user assignment scheduled tasks running at the same time). This has now been fixed. This patch does not retroactively send program/certification enrolment messages that were missed. TL-9086 HR Import now validates incoming user custom field values consistently Previously HR Import was validating incoming user custom field data without first passing it through the user custom fields API. This could lead to invalid data passing validation as it had not been appropriately translated. HR Import now correctly passes incoming data through the user custom fields API prior to validation to ensure any invalid data is detected and not imported. TL-9115 Improved the display of averaged columns in Report Builder When averaging a field the number of decimal places shown was the default returned by the database. The display has been improved to only show 2 decimal places. TL-9118 HR Import now converts mixed case usernames to lower case This fixes a backwards compatibility issue introduced by TL-8502. TL-8502 improved validation of usernames being imported through HR Import. Unfortunately a previously added hack was present which was converting mixed case usernames to lower case. TL-8502 reverted this hack, ensuring only completely valid usernames could be imported, and any invalid usernames would be skipped with an error. After the release of 2.9.7 we received several reports of people relying on this conversion to import their data. After much discussion we decided to treat this as a backwards compatibility issue and fix it as a bug in 2.7 and 2.9. Now when you import a username with mixed case you will receive a warning, the username will be converted to lower case and the user will be imported. Please note that in Totara 9.0 you will receive an error and the user will not be imported. We advise those who are getting these warning to fix the data they are importing so as to make it accurate. TL-9135 Fixed the use of files within textarea type custom fields TL-9159 Multi-select custom field data params are now correctly deleted when the field is deleted Previously data params for multi-select custom field values were not being deleted when the multi-select custom field was deleted. This resulted in orphaned data param records being left in the database. Now when a multi-select custom field is deleted the data params for it are also deleted. Additionally an upgrade step will clean up any orphaned multi-select data params that may be lurking in your database. TL-9162 Removing a user from an allocated Face-to-face session now returns capacity Previously when a user was removed from an allocated spot in a Face-to-face session by their manager the space they were occupying was not returned to the available capacity of the session, nor were they being informed that their allocation had been cancelled. Now when a user is removed from an allocated spot the capacity is returned and the user is notified. TL-9187 Fixed searching of the Program exceptions list by firstname and lastname TL-9210 Fixed a missing iCal attachment in the Face-to-face session allocation notification email TL-9235 Fixed the display of aggregated yes_or_no Report Builder columns "Yes" is counted as 1, "No" is counted as 0. Aggregate functions use these values for the calculations. TL-9241 Ensured the ability to choose an appraiser is not available when appraisals have been disabled TL-9261 Fixed the "Re-sort" button within the Certification management UI TL-9341 Fixed the User's Position Framework ID filter within the User report source TL-9362 Fixed the status display for certification in progress within the Record of Learning TL-9387 Fixed the display of Face-to-face sessions in the Face-to-face block TL-9388 Fixed the expansion of the Site Administration menu in IE8 TL-9392 Available courses on the front page are no longer duplicated when the user is not enrolled in any courses If the front page had been configured to display a list of Enrolled Courses and the user was not enrolled on any courses then a list of available courses would be displayed in stead. Previously if you had also configured the front page to contain a list of available courses this would then lead to the list of available courses being displayed twice. Now when the front page has been configured to display a list of available courses and enrolled courses, when the user is not enrolled on courses then nothing is printed. This stops the list of available courses from being printed twice. TL-9397 Fixed an error encountered while exporting a Face-to-face cancellation report This fixes a regression introduced by TL-6962, released in Totara 2.7.14, 2.9.6. TL-9434 Fixed a bug preventing roles from being assigned via audiences at the category level TL-9438 Fixed average aggregation within Report Builder when using MSSQL MSSQL now ensures that it is using decimals when fetching average aggregations. TL-9453 Prevented the adding of a Program to a Learning Plan from resetting Program status When a program was already assigned to a user, if the same program was then added to the user's learning plan, the status of the program was reset. The program would likely be re-marked completed by cron, but only if the course requirements were unchanged and the courses involved were still marked complete. Additionally, dates related to the program may have changed. This fix prevents changes when adding a program to a learning plan if the user is already assigned to the program. TL-9473 Fixed the "Download all" button within the file manager in IE and Safari TL-9485 Fixed data param handling in the core data object class TL-9669 Fixed the possibility of a "maximum SQL input variables" bug within the Face-to-face upgrade Contributions: * Davo Smith at Synergy Learning - TL-9485 * Francis Devine at Catalyst NZ - TL-9086 * Nigel Cunningham at Catalyst AU - TL-8601, TL-9261
Release 2.7.17 (26th July 2016): Important: TL-9702 This release contains fixes made in Moodle 2.7.15 Moodle 2.7.15 received two fixes as noted below: 1. MDL-55069 core: escape special characters in email headers Imported as TL-9515 2. MDL-53019 environment: 3.2 requirements added Imported as TL-9556 Security issues: TL-9340 Fixed access control when deleting calendar subscriptions Users can only delete their own calendar subscriptions. Previously it was possible to craft a special request that would allow you to delete a calendar subscription regardless of whether you were the owner or not. The moodle/calendar:manageownentries capability is now consistently checked. TL-9400 Fixed access control when deleting personal goals A user's personal goals can only be deleted if one of the following conditions is true for the current user: 1. They have the totara/hierarchy:managegoalassignments capability in the system context. 2. They are a manager of the goal's owner and they have the totara/hierarchy:managestaffpersonalgoal capability in the users context. 3. It is one of their own personal goals and they have the totara/hierarchy:manageownpersonalgoal capability in the system context. Previously it was possible to craft a special request that would allow you to delete any personal goal, regardless of whether it was one of your personal goals or not. The relevant capability checks are now consistently applied. TL-9515 Fixed sanitisation of user's firstname and lastname when sending emails Totara was not previously sanitising the users firstname and lastname correct when compiling emails to the user. An authenticated user could therefor alter their firstname or lastname in Totara to contain invalid content including additional email addresses. As their firstname and lastname was not being correctly sanitised this could be abused to send spam to others. The users firstname and lastname is now properly sanitised. References MDL-55069 Improvements: TL-9221 Added the ability to resolve dismissed program exceptions to the completion editor The Program and Certification completion editors now display information about dismissed program exceptions when viewing a user's completion data, and allow dismissed exceptions to be overridden. TL-9314 Improved the information shown when viewing a Certification When a user views one of their certifications, they will see a more verbose description of the status. It is now clear when a user is not required to work on a certification. When working on a specific certification path, only courses in that path are shown (as before), otherwise both paths are shown, rather than trying to show the last path completed (which cannot be calculated under several circumstances). Additionally, a warning has been added, and is shown when the user is due to recertify but the window opening process has not yet occurred. TL-9383 Improved the performance of sidebar searches within Report Builder For reports which had multi-check filters enabled in the sidebar, such as in the course catalog, item counts shown in the filter were sometimes being queried twice unnecessarily. In cases where there were thousands of items, this had a noticeable effect on performance. These items counts are now only queried once, and only if needed. TL-9483 Fixed Behat file uploads to work in all browsers and in remote selenium instances TL-9484 Added a workaround for missing alert confirmation support in PhantomJS TL-9556 Environment definition updated to reflect Moodle 3.2 requirements Bug fixes: TL-7907 Fixed manager approval for Face-to-face direct enrolment when automatic signup is enabled Previously if you had a Face-to-face activity that was configured to require manager approval, within a course with a Face-to-face direct enrolment instance added and configured to automatically sign new users up to all available sessions, then when a new user signed up they would be automatically booked to the session requiring manager approval, bypassing the approval stage. Now the Face-to-face direct enrolment plugin, with automatic signup enabled, correctly respects the manager approval requirements for available sessions. TL-8601 Fixed backup and restore of multi-select and file type Course custom fields TL-8985 Suspending a user no longer cancels past Face-to-face signups Previously if you suspended a user any Face-to-face signups they had made would be cancelled. Even when the Face-to-face session had already been run. Now when a user is suspended only Face-to-face signups for future sessions are cancelled. TL-9056 Fixed program enrolment messages not being sent It was possible that some program and certification enrolment messages were not being sent. This would only occur in the unlikely event that the program messaging scheduled task took some time to run, and that program assignments changed during that time (either by a manual change made in the Assignments interface when there were less than 200 users involved in the program, or due to one of the two user assignment scheduled tasks running at the same time). This has now been fixed. This patch does not retroactively send program/certification enrolment messages that were missed. TL-9086 HR Import now validates incoming user custom field values consistently Previously HR Import was validating incoming user custom field data without first passing it through the user custom fields API. This could lead to invalid data passing validation as it had not been appropriately translated. HR Import now correctly passes incoming data through the user custom fields API prior to validation to ensure any invalid data is detected and not imported. TL-9116 Fixed broken images when viewing the description for a live Appraisal TL-9118 HR Import now converts mixed case usernames to lower case This fixes a backwards compatibility issue introduced by TL-8502. TL-8502 improved validation of usernames being imported through HR Import. Unfortunately a previously added hack was present which was converting mixed case usernames to lower case. TL-8502 reverted this hack, ensuring only completely valid usernames could be imported, and any invalid usernames would be skipped with an error. After the release of 2.9.7 we received several reports of people relying on this conversion to import their data. After much discussion we decided to treat this as a backwards compatibility issue and fix it as a bug in 2.7 and 2.9. Now when you import a username with mixed case you will receive a warning, the username will be converted to lower case and the user will be imported. Please note that in Totara 9.0 you will receive an error and the user will not be imported. We advise those who are getting these warning to fix the data they are importing so as to make it accurate. TL-9135 Fixed the use of files within textarea type custom fields TL-9159 Multi-select custom field data params are now correctly deleted when the field is deleted Previously data params for multi-select custom field values were not being deleted when the multi-select custom field was deleted. This resulted in orphaned data param records being left in the database. Now when a multi-select custom field is deleted the data params for it are also deleted. Additionally an upgrade step will clean up any orphaned multi-select data params that may be lurking in your database. TL-9187 Fixed searching of the Program exceptions list by firstname and lastname TL-9210 Fixed a missing iCal attachment in the Face-to-face session allocation notification email TL-9235 Fixed the display of aggregated yes_or_no Report Builder columns "Yes" is counted as 1, "No" is counted as 0. Aggregate functions use these values for the calculations. TL-9387 Fixed the display of Face-to-face sessions in the Face-to-face block TL-9392 Available courses on the front page are no longer duplicated when the user is not enrolled in any courses If the front page had been configured to display a list of Enrolled Courses and the user was not enrolled on any courses then a list of available courses would be displayed in stead. Previously if you had also configured the front page to contain a list of available courses this would then lead to the list of available courses being displayed twice. Now when the front page has been configured to display a list of available courses and enrolled courses, when the user is not enrolled on courses then nothing is printed. This stops the list of available courses from being printed twice. TL-9397 Fixed an error encountered while exporting a Face-to-face cancellation report This fixes a regression introduced by TL-6962, released in Totara 2.7.14, 2.9.6. TL-9438 Fixed average aggregation within Report Builder when using MSSQL MSSQL now ensures that it is using decimals when fetching average aggregations. TL-9453 Prevented the adding of a Program to a Learning Plan from resetting Program status When a program was already assigned to a user, if the same program was then added to the user's learning plan, the status of the program was reset. The program would likely be re-marked completed by cron, but only if the course requirements were unchanged and the courses involved were still marked complete. Additionally, dates related to the program may have changed. This fix prevents changes when adding a program to a learning plan if the user is already assigned to the program. TL-9485 Fixed data param handling in the core data object class TL-9669 Fixed the possibility of a "maximum SQL input variables" bug within the Face-to-face upgrade Contributions: * Davo Smith at Synergy Learning - TL-9485 * Francis Devine at Catalyst NZ - TL-9086 * Nigel Cunningham at Catalyst AU - TL-8601
Release 2.6.34 (26th July 2016): Security issues: TL-9340 Fixed access control when deleting calendar subscriptions Users can only delete their own calendar subscriptions. Previously it was possible to craft a special request that would allow you to delete a calendar subscription regardless of whether you were the owner or not. The moodle/calendar:manageownentries capability is now consistently checked. TL-9400 Fixed access control when deleting personal goals A user's personal goals can only be deleted if one of the following conditions is true for the current user: 1. They have the totara/hierarchy:managegoalassignments capability in the system context. 2. They are a manager of the goal's owner and they have the totara/hierarchy:managestaffpersonalgoal capability in the users context. 3. It is one of their own personal goals and they have the totara/hierarchy:manageownpersonalgoal capability in the system context. Previously it was possible to craft a special request that would allow you to delete any personal goal, regardless of whether it was one of your personal goals or not. The relevant capability checks are now consistently applied. TL-9515 Fixed sanitisation of user's firstname and lastname when sending emails Totara was not previously sanitising the users firstname and lastname correct when compiling emails to the user. An authenticated user could therefor alter their firstname or lastname in Totara to contain invalid content including additional email addresses. As their firstname and lastname was not being correctly sanitised this could be abused to send spam to others. The users firstname and lastname is now properly sanitised. References MDL-55069 Improvements: TL-9221 Added the ability to resolve dismissed program exceptions to the completion editor The Program and Certification completion editors now display information about dismissed program exceptions when viewing a user's completion data, and allow dismissed exceptions to be overridden. TL-9483 Fixed Behat file uploads to work in all browsers and in remote selenium instances TL-9484 Added a workaround for missing alert confirmation support in PhantomJS Bug fixes: TL-5108 Stopped timezones being displayed within Face-to-face reports when they are disabled in the plugin settings TL-5654 Added missing notification templates to Face-to-face settings TL-9135 Fixed the use of files within textarea type custom fields TL-9210 Fixed a missing iCal attachment in the Face-to-face session allocation notification email TL-9392 Available courses on the front page are no longer duplicated when the user is not enrolled in any courses If the front page had been configured to display a list of Enrolled Courses and the user was not enrolled on any courses then a list of available courses would be displayed in stead. Previously if you had also configured the front page to contain a list of available courses this would then lead to the list of available courses being displayed twice. Now when the front page has been configured to display a list of available courses and enrolled courses, when the user is not enrolled on courses then nothing is printed. This stops the list of available courses from being printed twice. TL-9453 Prevented the adding of a Program to a Learning Plan from resetting Program status When a program was already assigned to a user, if the same program was then added to the user's learning plan, the status of the program was reset. The program would likely be re-marked completed by cron, but only if the course requirements were unchanged and the courses involved were still marked complete. Additionally, dates related to the program may have changed. This fix prevents changes when adding a program to a learning plan if the user is already assigned to the program. TL-9466 Fixed notice when sending registration information via cron when executed from the command line
Release 2.5.41 (26th July 2016): Security issues: TL-9340 Fixed access control when deleting calendar subscriptions Users can only delete their own calendar subscriptions. Previously it was possible to craft a special request that would allow you to delete a calendar subscription regardless of whether you were the owner or not. The moodle/calendar:manageownentries capability is now consistently checked. TL-9400 Fixed access control when deleting personal goals A user's personal goals can only be deleted if one of the following conditions is true for the current user: 1. They have the totara/hierarchy:managegoalassignments capability in the system context. 2. They are a manager of the goal's owner and they have the totara/hierarchy:managestaffpersonalgoal capability in the users context. 3. It is one of their own personal goals and they have the totara/hierarchy:manageownpersonalgoal capability in the system context. Previously it was possible to craft a special request that would allow you to delete any personal goal, regardless of whether it was one of your personal goals or not. The relevant capability checks are now consistently applied. TL-9515 Fixed sanitisation of user's firstname and lastname when sending emails Totara was not previously sanitising the users firstname and lastname correct when compiling emails to the user. An authenticated user could therefor alter their firstname or lastname in Totara to contain invalid content including additional email addresses. As their firstname and lastname was not being correctly sanitised this could be abused to send spam to others. The users firstname and lastname is now properly sanitised. References MDL-55069 Improvements: TL-9221 Added the ability to resolve dismissed program exceptions to the completion editor The Program and Certification completion editors now display information about dismissed program exceptions when viewing a user's completion data, and allow dismissed exceptions to be overridden. Bug fixes: TL-9392 Available courses on the front page are no longer duplicated when the user is not enrolled in any courses If the front page had been configured to display a list of Enrolled Courses and the user was not enrolled on any courses then a list of available courses would be displayed in stead. Previously if you had also configured the front page to contain a list of available courses this would then lead to the list of available courses being displayed twice. Now when the front page has been configured to display a list of available courses and enrolled courses, when the user is not enrolled on courses then nothing is printed. This stops the list of available courses from being printed twice. TL-9453 Prevented the adding of a Program to a Learning Plan from resetting Program status When a program was already assigned to a user, if the same program was then added to the user's learning plan, the status of the program was reset. The program would likely be re-marked completed by cron, but only if the course requirements were unchanged and the courses involved were still marked complete. Additionally, dates related to the program may have changed. This fix prevents changes when adding a program to a learning plan if the user is already assigned to the program. TL-9466 Fixed notice when sending registration information via cron when executed from the command line
Release 2.4.43 (26th July 2016): Security issues: TL-9340 Fixed access control when deleting calendar subscriptions Users can only delete their own calendar subscriptions. Previously it was possible to craft a special request that would allow you to delete a calendar subscription regardless of whether you were the owner or not. The moodle/calendar:manageownentries capability is now consistently checked. TL-9515 Fixed sanitisation of user's firstname and lastname when sending emails Totara was not previously sanitising the users firstname and lastname correct when compiling emails to the user. An authenticated user could therefor alter their firstname or lastname in Totara to contain invalid content including additional email addresses. As their firstname and lastname was not being correctly sanitised this could be abused to send spam to others. The users firstname and lastname is now properly sanitised. References MDL-55069 Bug fixes: TL-9466 Fixed notice when sending registration information via cron when executed from the command line
Release 2.2.49 (26th July 2016): Security issues: TL-9515 Fixed sanitisation of user's firstname and lastname when sending emails Totara was not previously sanitising the users firstname and lastname correct when compiling emails to the user. An authenticated user could therefor alter their firstname or lastname in Totara to contain invalid content including additional email addresses. As their firstname and lastname was not being correctly sanitised this could be abused to send spam to others. The users firstname and lastname is now properly sanitised. References MDL-55069 Bug fixes: TL-9298 Fixed PHP warnings on the My Learning page when there are no tasks or alerts