Release 10.0 Complete changelog(22nd September 2017):
Important:
TL-7753 The gauth authentication plugin has been removed from all versions of Totara
The gauth plugin has now been removed from Totara 10, 9.10, 2.9.22, 2.7.30,
and 2.6.47.
It was removed because the Google OpenID 2.0 API used by this plugin has
been shut down.
The plugin itself has not worked since April 2015 for this reason.
No alternative is available as a brand new plugin would need to be written
to use the API's currently provided by Google.
TL-10980 + Totara 10 can only be upgraded to from Totara 9, or an Evergreen release
It is important to note that sites running on Totara 2.9 or earlier are
required to upgrade through Totara 9.
If you are intending to upgrade from Totara 2.9 to Totara 10 you must
upgrade to Totara 9 before upgrading to Totara 10.
TL-10994 + Introduction of the Evergreen maturity
A new product maturity setting has been introduced, MATURITY_EVERGREEN.
This new maturity will be used only for Evergreen releases and should be
considered stable.
TL-11161 + Removed Kiwifruit responsive theme
As Kiwifruit responsive has been deprecated previously, it has now been
removed.
If you wish to continue using Kiwifruit responsive (NOTE: it will no longer
be supported so there is a high likelihood things will be broken), please
follow these steps (on top of a normal upgrade process):
# Take a backup of theme/kiwifruitresponsive.
# Update the code base.
# Restore theme/kiwifruitresponsive into it's original location.
# Run the upgrade.
If step 4 is done before step 3, all settings that were in Kiwifruit
responsive will have been removed (and may need to be restored).
TL-11457 + Include features, improvements and bug fixes from Moodle 3.1
This release contains features, improvements and bug fixes from Moodle 3.1
By reviewing the changelog you can find out which Moodle issues have been
included.
Please be aware that not all Moodle changes are included in Totara, we are
now selective about what gets included from upstream.
TL-12803 Ensured the default run times for scheduled tasks are set correctly
The default run times for several scheduled tasks were incorrectly
configured to run every minute during the specified hour, rather than just
once per day. To schedule a task to run once per day at a specific time,
both the hour and minute must be specified. The defaults have now been
fixed by changing the 'minutes' from '*' to '0'. Any scheduled tasks that
were using the default schedule have been updated to use the new default.
If any of your scheduled tasks intentionally needed to use the old default
schedule, or are not using the default schedule, you should manually check
that they are configured correctly after running the upgrade.
TL-12853 + The TinyMCE editor has been removed from core
TL-12978 + Include features, improvements and bug fixes from Moodle 3.2
This release contains features, improvements and bug fixes from Moodle 3.2
By reviewing the changelog you can find out which Moodle issues have been
included.
Please be aware that not all Moodle changes are included in Totara, we are
now selective about what gets included from upstream.
TL-12984 + Include features, improvements and bug fixes from Moodle 3.2
This release contains features, improvements and bug fixes from Moodle 3.2
By reviewing the changelog you can find out which Moodle issues have been
included.
Please be aware that not all Moodle changes are included in Totara, we are
now selective about what gets included from upstream.
TL-13086 + The alfresco repository plugin has been removed from core
TL-13474 + The radius authentication plugin has been removed from core
TL-13862 + MySQL/MariaDB drivers now require barracuda file format and include support for full unicode utf8mb4_* collations
Administrators can use utf8mb4_ collations in config.php to get full
unicode compatibility on MySQL servers. This setting must be added to
config.php before the installation or after the migration to new setting.
At the same time MySQL and MariaDB driver requires Barracuda file format.
TL-13916 + The 'Use HTTPS for logins' setting has been removed
It is no longer possible to require login via HTTPS without serving all
pages via HTTPS.
Those wishing to use HTTPS (highly recommended) need to use it across the
whole site.
TL-13921 + The bootstrapbase theme and other deprecated themes have been removed from core
The following themes have been removed from core:
* bootstrapbase
* standardtotararesponsive
* customtotararesponsive
TL-13943 + All emails are now sent from the no reply address
Previously this was the behaviour when $CFG->emailonlyfromnoreplyaddress
was enabled, this setting was removed because it is now always on. Please
note it is strongly recommended to use SMTP sending account with the same
address as $CFG->noreplyaddress, otherwise emails may get marked as spam or
not delivered at all.
TL-14206 + The slasharguments setting has been removed from core
Behaviour of the site is now always equivalent to having had this setting
turned on.
TL-14250 + Minimum supported version of MS SQL Server was raised to 2012
TL-14278 Changed mathjax content delivery network (CDN) from cdn.mathjax.org to cdnjs.cloudflare.com
cdn.mathjax.org is being shut down
TL-14327 "Fileinfo" php extension is now required
This was previously required but not enforced by environment checks
TL-14731 + The Intl PHP extension is now required
TL-14941 + Having MySQL configured with mysql_large_prefix is now recommended
TL-15905 + Minimum required version of MS SQL Server is 2014
Security issues:
TL-12538 + Fixed session key handling within tool_spamcleaner
TL-12634 + Added functionality to remove web services tokens when a user's password is changed
Before this patch web services tokens remained valid when a user's password
was changed. Now tokens are removed as a security precaution provided that
the config setting 'passwordchangetokendeletion' has been set to true. If
it hasn't, users also given the opportunity to clear web service tokens in
the change password interface.
Performance improvement:
TL-2821 Capability to configure a second database connection for Report Builder
It is now possible to configure a second database connection for use by
Report Builder.
The purpose of this secondary connection is so that you can direct the main
Report Builder queries at a read-only database clone.
The upside of which is that you can isolate the database access related
performance cost of Report Builder to an isolated database server.
This in turn prevents the expensive report builder queries from being
executed on the primary database, hopefully leading to a better user
experience on high concurrency sites.
These settings should be considered highly advanced.
Support cannot be provided on configuring a read only slave, you will need
in house expertise to achieve this.
Those wishing to use the second database connection can find instructions
for it within config-dist.php.
TL-6834 Improved the performance of Report Builder reports by avoiding unnecessary count queries
Previously when displaying a report in the browser the report query would
be executed either two or three times.
Once to get the filtered count of results.
Potentially once more to get the unfiltered count of results.
Once to get the first page of data.
The report page, and all embedded reports now use a new counted recordset
query that gives the first page of data and the filtered count of results
in a single query, preventing the need to run the expensive report query to
get the filtered count.
Additionally TL-14791 prevents the need to run the query to get the
unfiltered count unless the site administrator has explicitly requested it
and the report creator explicitly turned it on for that report.
This reduction of expensive queries greatly improves the performance of
viewing a report in the browser.
TL-14237 Fixed an SQL error when caching a report with Job Assignment fields
Removed an issue where caching of a report failed due to the SQL failing.
This is only for the User's Position(s), User's Organisation(s), User's
Manager(s) and User's Appraiser(s) filters.
TL-14398 Report Builder source caching is now user specific
Previously the Report Builder source cache was shared between users.
When scheduled reports were being run this could lead to several issues,
notably incorrect results when applying filters, and performance issues.
The cache is now user specific. This consumes more memory but fixes the
user specific scheduled reports and improves overall performance when
generating scheduled reports created by many users.
TL-14421 Improved the performance of the Site log report source when the event name filter was available
The "Event name" filter has been changed from an option selector to a
freetext filter improving the performance of the site log report.
TL-14432 Improved performance when generating report caches for reports with text based columns
Previously all fields within a Report Builder cache had an index created
upon them.
This included both text and blob type fields and duly could lead to
degraded performance or even failure when trying to populate a Report
Builder cache.
As of this release indexes are no longer created for text or blob type
columns.
This may slow down the export of a full cached report on some databases if
the report contains many text or blob columns, but will greatly improve the
overall performance of the cache generation and help avoid memory
limitations in all databases.
TL-14724 + Improved aggregation of custom fields within Report Builder reports
Previously it was not possible to aggregate custom user profile field
columns in Report Builder reports.
It is now possible, providing the fields are set as visible to everyone.
TL-14744 Fixed a JavaScript bug within the enhanced course catalog when no filters are available
TL-14761 New better performing Job columns
Several new Job columns have been added to the available user columns in
reports that can include user columns.
The new Job columns can be found under the "User" option group, the
available columns are as follows:
* User's Position Name(s)
* User's Position ID Numbers(s)
* User's Organisation Name(s)
* User's Organisation ID Numbers(s)
* User's Manager Name(s)
* User's Appraiser Name(s)
* User's Temporary Manager Name(s)
* Job assignments
There are already several Job columns available in many sources, however
they operate slightly differently and perform very poorly on large sites.
The new columns have nearly the same result, but are calculated much more
quickly. In testing they were between 70-90% faster than the current
columns.
There is only one difference between the new and old columns and that is
how they are sorted when the user had multiple jobs.
The old columns all sorted the information in the column by the Job sort
order. This meant that all of the old columns were sorted in the same way
and the information aligned across multiple columns.
The new columns sort the data alphabetically, which means that when viewing
multiple columns the first organisation and the first position may not
belong to the same Job.
We strongly recommend that all reports use the new columns.
This needs to be done manually by changing from the Job columns shown under
"All User's Job Assignments" to those appearing under "User".
If you must use the old columns please be aware that performance,
particularly on MySQL and MSSQL could be a major issue on large sites.
The old fields are now deprecated and will be removed after the release of
Totara 10.
TL-14780 Fixed the unnecessary use of LIKE within course category filter multichoice
The course category multichoice filter was unnecessarily using like for
category path conditions.
It can use = and has been converted to do so, improving the overall
performance of the report when this filter is in use.
TL-14791 Report Builder reports no longer show a total count by default
The total unfiltered count of records is no longer shown alongside the
filtered count in Report Builder reports.
If you want this functionality back then you must first turn on "Allow
Report Builder reports to show Total Count" at the site level, and then for
each report where you want it displayed edit the report and turn on
"Display a Total Count of records" (found under the Performance tab).
Please be aware that for performance reasons we recommend you leave these
settings off.
TL-14793 Filters which are not compatible with report caching can now prevent report caching
Previously filters that were not compatible with report caching, such as
those filters using correlated subqueries, could be added to a report and
report caching turned on.
This either lead to an error or poor performance.
When such a filter is in use in a report, report caching is now prevented.
TL-14816 Added detection of filters that prevent report caching
Report Builder now reviews the filters that are being used on a report that
is configured to be cached before attempting to generate the cache in order
to check if the filter is compatible with caching.
If the filter is not compatible with caching then the report will not use
caching.
This prevents errors being encountered when trying to filter a cached
report for filters that are not compatible with caching.
TL-14824 Improved the performance of the Site logs report source
Several columns in the Site logs report source were requiring additional
fields that did not perform well, and were not actually required for the
display of the columns in the report.
These additional fields have been removed, improving the performance of the
Site logs report source.
New features:
TL-4156 Added the course completion editor
The course completion editor is accessible in Course administration >
Course completion, to all users who have the
'totara/completioneditor:editcoursecompletion' capability in the course
context (default is administrators only). The editor allows you to edit
course completion, criteria completion, activity completion and history
data, allowing you to put this data into any valid state. It includes
transaction logs, which record all changes that are made to these records
(both from within the editor and in other areas of Totara, e.g. completion
of an activity, or when cron reaggregates completion). It also includes a
checker, which can be used to find records which have data in an invalid
state.
TL-8169 + Added placeholders to Appraisal messages
Appraisal messages can now use placeholders that will be replaced with the
relevant information immediately prior to sending the message.
Please review the in-product help when creating and editing appraisal
messages for a list of available placeholders.
TL-11096 New signup with approval authentication plugin
Thanks to Learning Pool for providing an initial plugin which informed the
design of this piece of work.
The new auth_approved plugin is similar to the existing auth_email plugin.
However, the auth_approved plugin has an approval process in which the
applicant gets a system access only if an approver approves of the signup.
The approver is any system user that has the new auth/approved:approve
capability. In addition, if the user also has the
totara/hierarchy:assignuserposition capability, he can change the
organisation/position/manager details that the applicant provided in his
signup.
The new plugin also has features to bulk approve or reject signups as well
as send custom emails to potential system users.
Finally, the new plugin also defines a report source that can be used as a
basis for custom reports.
TL-11319 + Added a Featured Links block
Added a block which can be added to the front page, dashboards and courses
that displays links as tiles. The tiles can have background images or a
chosen color and can reference a course or use internal and external links.
There are visibility options for each tile allowing them to be hidden and
shown as required.
Improvements:
TL-853 + Replaced existing Browse List of Users page with Report builder report
This new version of the user report provides the functionality of the
original plus all the benefits of a report generated within Report builder.
Please note, Mnet is not supported in the new report. You can however,
access Mnet functionality through a legacy version of the report.
TL-2276 + Added a "User's authentication method" column and filter to all Report Builder reports that present user information
TL-4804 + Added additional default columns to the Seminar Sessions report source
The new default columns are 'Event capacity', 'Number of attendees
(including waiting approval, approved, and wait-listed)', and 'Places
available'
TL-5224 + Added a "Course date created" column and filter to Report builder sources that present course information
TL-5375 + Added partial sync capability for Organisations and Positions to HR Import
It is now possible to import a position or organisation file that doesn't
contain all records. This is controlled by the "Source contains all
records" setting on the settings page for the element.
If "Source contains all records" is set to "No" for Organisations or
Positions then the deleted column is required in the source. For new
installs the default for this setting is "No".
TL-5604 + Added a Program 'completion date' filter to the Record of Learning Program report source
TL-6009 + Added additional columns to the Previous Certifications report source
The following columns were added: Status, Renewal status, Progress
(displayed as a progress bar)
The following filters were added: Status, Renewal status
TL-6011 + Added 'timecreated' and 'timemodified' columns and filters to the Record of Learning Evidence report source
TL-6118 + Added 'submission status' column and filter to the Assignment submissions report source
TL-6210 + Added a "Goal type" column and filter to the Goal Summary Report builder source
TL-6335 + Added new 'time created', 'time updated', and 'updated by' columns and filters to Seminar report sources
TL-6535 + Added new 'HR Import' column and filter to the User report source
TL-6553 + Added "Time to complete" columns to the Course Completions Report builder source
Two new columns have been added to the Course Completions report:
* Time to complete (since start date)
* Time to complete (since enrol date)
TL-6766 + Added a new column to the Appraisal status report source to show roles that haven't completed the current active stage
TL-7049 + Added "is user assigned" column and filter to Program and Certification completion Report builder sources
TL-7648 + Ensured that required database source fields are always listed for HR Import
TL-7668 + Improved HR Import External Database source sanity checks and error messages
TL-7693 + Changed the notification url when an Evidence Type is added/edited to the list of all Evidence Types
TL-7699 + Multi Select custom fields can now have multiple values set when used via HR Import
Multiple values can now be used for adding data to Multi Select custom
fields when used with HR Import. The values need to be separated by a comma
(,). Where the value contains a comma, use single quotes (') around the
value.
TL-7954 + Added customisable manager subjects to program messages
This patch adds a new setting to the emails form on the program messages
tab. The new text field "manager subject" sits between the "send notice to
manager" checkbox and the "notice for manager" text area. This new setting
allows you to edit the subject line for managers receiving the email about
their staff member. If the field is left blank the message will continue to
use the old strings.
TL-8126 + Added two "Member count" columns to the Position and Organisation Report builder sources
TL-8318 + Added an Enrolment Types column and filter to the Course Completion report source
TL-8468 + Added support for activity completion to course completion progress bars
Previously a user's progress towards completion of a course were indicated
via one of 3 states - not yet started, in progress and completed. This is
now replaced with a progressbar that indicates the actual progress towards
completion as a percentage.
If a user is unable to complete a course due to completion tracking not
enabled for the course, no completion criteria defined for the course, or
the specific user's progress not being tracked, an indication of this is
shown instead of a progress bar.
In previous versions a user could obtain detail on actions required to
complete a course by clicking on the course's status bar. This is currently
not available but will be provided by the implementation of TL-15920
TL-8552 + Added "Program Status" and "Job assignment" filters to the Program Overview Report builder source
TL-8741 + Corrected handling of unique values for date and menu user profile fields.
TL-8766 + Added a "Goal description" column and filter to the Goal Custom Fields Report builder source
TL-8939 + Added an "Audience member" filter to all Report builder sources that have user fields
TL-9073 + Minor text improvements in the Seminar activity
TL-9204 + Updated 'Manage reports' page to use an embedded report
The report builder 'Manage reports' page has been split into two pages, one
for user reports and one for embedded reports. There is now a separate
capability that can be assigned independently so you can control who can
manage embedded reports.
In addition there is a new 'Reports' report source and the 'Manage reports'
page has been converted to an embedded report, which means it's possible to
customise the columns that are shown, add filters and export the list of
reports.
TL-9211 + Added a new 'related user' filter to the Site logs report source
TL-9217 + Updated Completion Import tool to use core csv_import_reader class
TL-9224 Improved consistency of program exception restrictions
Previously some Programs code was still being executed on users with
exceptions, those places now check for valid user assignments before
processing the users. Some places identified were, the program completion
cron, the certification window opening cron, and the programs course
enrolment plugin.
TL-9299 + Improved the performance of the program completion scheduled task
TL-9300 Updated the Date/time custom field so that it is not enabled by default
Making the Date/time custom fields disabled by default prevents the field
from being set inadvertently. When the custom field is marked as required
the field will always be enabled and default to the present date.
TL-9315 + Added self evaluations to 360° Feedback
TL-9342 + Time created and time modified are now recorded for Learning Plans
We now record the time a Learning Plan was created, and when it was last
modified.
Two new columns have been added to Report Builder reports to display this
information.
Please be aware that this information is only available for Learning Plans
created or modified after upgrading to this version of Totara.
TL-9759 + Added the 'user status' column to the Seminar Events & Sessions report sources
TL-9775 Added Behat tests for Dynamic Audience Based Learning Plan creation
TL-9849 + Replaced the filepicker and filemanager upload icons with flex icons
TL-10119 + Improved the spacing and alignment between user and 'burger' menu on mobile devices.
TL-10216 + Added "Event start time" and "Event finish time" columns to the Seminar Events Report builder source
TL-10228 + Add Job Assignment HR Import source
Job assignments can no longer be imported using the User HR Import source.
Data must now be imported using this source instead. Job assignment data
should be removed from the User source.
IMPORTANT: If users had their own 'HR Import' setting enabled for their
user record, all of their job assignments records will have the new 'HR
Import' setting enabled after upgrade.
This only applies during the upgrade. Updating a user's 'HR Import' setting
enabled after upgrade will not alter this field for their job assignments.
Consistent with how this setting operates for users and hierarchies, this
setting is off by default when adding a job assignment manually. It will be
on by default for job assignments created by the new HR Import source. The
setting is only visible in a job assignment record once the Job Assignment
HR Import source has been enabled.
TL-10250 + Added alt text to icons and buttons within the Atto editor
TL-10254 + Improved accessibility when viewing the course user outline report
TL-10256 + Removed incorrect HTML label tags (and replaced by aria attributes where appropriate) when viewing grader report
TL-10404 + Added a new 'copy manager' setting to Seminar notification templates
TL-10414 + Ensured that the Appraisals collapsable section header is no longer displayed when empty
TL-10490 + Added a Seminar Sign-up link directly into the calendar upcoming events block
TL-10502 Renamed Record of learning navigation block to "Learning" (from "Learning plans")
TL-10670 + Implemented position, organisation, job assignment and custom user profile field value sync in Totara Connect
Totara Connect can now be configured to synchronise Positions,
Organisations, Job Assignments, and custom user profile field values
between connected LMS instances.
Please be aware of the following limitations:
* Custom user profile field values will only be synced if the client site
has custom profile fields configured with short names that match exactly
those on the server.
* Positions, and Organisations will only be synced if the client site has a
framework with an idnumber matching exactly the type of the Position or
Organisation on the server.
TL-10833 + Added two new settings to control the maximum width and height of graphs within the Report Graph block
There are two new settings for the Report Graph block 'Max width' and 'Max
height', these allow you to control the proportions of the graph that is
displayed by this block, ensuring that it is suitably sized for the
location of your block. By default the graph will continue to fill the
available space, as it has done previously. It should also be noted that
the aspect ratio of the graph is maintained.
TL-10918 + Added additional information about what will be deleted when deleting Job assignments
TL-11014 + Improved the handling of single course certifications and programs within the Current Learning block
If a Program or the current path of a Certification only contains a single
course, then the item will be shown without the ability to expand and will
link directly to the Course within it instead of the Program/Certification.
TL-11099 + Added audience membership as a badge criteria
This improvement adds new criteria for site-level badges which allows an
administrator to award a badge based on membership of an audience.
TL-11121 + Added new program completion criteria to site badges
This improvement adds new criteria for site-level badges which allows an
administrator to award a badge based on completion of a program.
TL-11174 + Improved the display and listing of users assigned to an Appraisal
* The 'Learners' column on the Appraisal Management page has been changed
to 'Assigned' and now shows the number of users assigned to the appraisal
as well as the number of users that have completed the assignment. For
'Closed' Appraisals, the number always equals the number of users that
completed the assignment.
* The Assignments tab for a specific appraisal list the assigned learners
for appraisals in the Draft and Active state, but only lists the users that
completed the appraisal for Closed appraisals. The table headings reflects
what is shown.
* The reported number of assigned, completed and cancelled users shown in
the reports, as well as the status of the listed users now correlates
better to what is shown in the Management and Detail pages.
TL-11187 + Added a new content restriction to Seminar report sources that allows content to be restricted based on Seminar session roles
TL-11198 + Added support for add-on report builder sources in column tests
Add-on developers may now add phpunit_column_test_add_data() and
phpunit_column_test_expected_count() methods to their report sources to
pass the full phpunit test suite with add-ons installed.
TL-11264 Improved Atto editor autosave messaging and draft revert workflow
When a draft is automatically applied to an Editor, there is now a
page-level alert to let users know what has happened. In addition, the
default arrangement of toolbar icons now includes Undo/Redo which, when a
Draft is auto-applied, will toggle between original Database-saved content
and the Draft.
TL-11277 + Multiselect custom fields no longer have a HTML fieldset per option
TL-11288 + Improved the accessibility of course home page actions
Accessible text has been added to the following course actions:
* Inline editing of an activities summary
* Changing an activities group mode
TL-11295 Added accessibility link text to the previous program completions column when viewing a user's record of learning
TL-11298 + Removed superfluous HTML labels when viewing an Appraisal
TL-11321 + Added labels associated with goal statuses when viewing a user's goals
TL-11323 + Added HTML labels to inputs when creating and reviewing learning plans
TL-11325 Added labels to the manage learning plan templates page
TL-11444 Added table headings when showing current forum subscribers
TL-12265 + Improved accessibility when adding/editing custom fields
TL-12276 + Made learning enrolment/assignment instant for self-registered users
Self registered users are now added to audiences, courses, programs, and
certifications on confirmation.
TL-12347 + Added a Red-amber-green status column and filter to the certifications report sources
TL-12353 + Improved program messaging performance
TL-12354 + Added support for service endpoint calls to methods defined in plugins
TL-12375 + Changed colour of state-info-* and brand-info theme variables to allow more easily recognisable information UI elements
TL-12380 + Added classes to abstract the execution of external applications
A library has been created to abstract the execution of shell commands.
This hardens security by only allowing applications to be run that are on a
whitelist.
On Unix systems, applications can also now be run via the PCNTL module. To
enable this, add and enable the PCNTL module to the PHP installation that
gets run via the CLI, then add the full path to the php binary to
$CFG->pcntl_phpclipath in config.php.
Information on using this library in custom plugins can be found at
[https://help.totaralearning.com/display/DEV/Command+execution+API]
TL-12388 + Added new User Last Access (Relative) and User Last Login (Relative) columns and filters to report builder.
This change adds two new columns and filters that are available to report
sources using user data. User Last Access and User Last Login are already
columns available in reports but the new columns use a natural language
relative date instead, so feature descriptions such as 'Within the last
hour', 'Today at 10:45' and '3 months ago'.
TL-12390 + Added new 'includenotset' option to date filters and applied to Last Login and First Access filters.
This change introduces a new option flag for report builder date filters
that allows a 'not set' checkbox to be added to a standard date filter.
This allows the user to include any records where the field date is blank /
not set in the report.
The 'not set' option has been turned on for the Last Login and First Access
column filters in this change.
TL-12391 + Modified the "User Time Modified" column output to improve accuracy and add a "no date" filter
In this change, the behaviour of User Time Modified has been altered to
ensure it accurately shows if / when a user has modified their profile. In
addition, its corresponding filter has been updated so allow records where
no time modified has been set to be added to the report.
TL-12399 + Added option to display border on blocks
Added an option to all blocks that allow the user to decide whether or not
to show the border on a block. This will also remove padding so the block
content is aligned with the outer edge of the block allowing blocks to
define their own outer border to avoid double borders. This is achieved by
a new column in the block_instances table
Added an option in the code for blocks to default to having a border or not
which can be overridden on a per-instance basis in the block configuration.
TL-12416 + Added badge description column and filter to the Badges issued report source
TL-12447 + Added UTC 10AM date field
TL-12653 + Removed HTML table in feedback 360 heading
TL-12654 + Removed superfluous label when searching Forum posts
TL-12657 + Associated a HTML label with scale value dropdown when viewing a single personal goal
TL-12660 + Added an accessible label to the add comment text field when JavaScript is turned off
TL-12661 + Added an accessible label when search glossary entries
TL-12666 + Added accessible text when changing forum digest type
TL-12726 + Added an accessible label when viewing the competencies tab of a users record of learning
TL-12732 Added accessible text to Seminar Room and Asset availability filter types
TL-12741 + Course activities and types are now in alphabetical order when using the enhanced catalog
This also makes the sort order locale aware (so users using Spanish
language will have a different order to those using English)
TL-12748 Speed up password hashing when importing users in HR Import
TL-12788 + Add scheduled tasks to clean the course and certification completion upload logs
# added scheduled tasks to clean the course and certification completion
upload logs
# added 'Settings' submenu for Upload Completion Records where user can
specify the length of time a user want to keep the course/certification
completion upload logs information.
TL-12814 + Added missing global $CFG to all autoloaded classes
TL-12840 + Improved admin tree API and performance
TL-12849 + Improved alignment of the manage badges table
TL-12865 + The list of supported browsers was updated to match vendor support status
TL-12886 Improved formatting when viewing user details within a course
TL-12887 + Prevented date (no timezone) user profile field displaying 'not set' to match the output of other profile fields.
TL-12900 + Updated the Chat activity to only show absolute dates for next start time
TL-12911 + Added tag area for Audiences
Having a tag area for audiences allows the default tag collection to be
changed.
TL-12949 + Web service tokens no longer shown in Manage token interface
Previously, any current web service tokens were shown in the Manage token
admin interface. These are now only shown one time when they are created
and can not be found again after navigating away from the page.
The 'Security keys' page in the user preferences is unaffected by this, as
that only shows a user's own tokens and only if they have the correct
permission to view it.
TL-12960 Drag and drop question images are scaled when they are too big for the available space
TL-12964 Updated the standard course catalog search to allow single character searches
TL-13917 + Fixed visibility tests for custom fields in Report builder reports to match to logic on profile pages
This patch removes 'totara/core:viewhiddenusercustomfielddata' capability
and uses standard 'moodle/user:viewalldetails' in report builder for all
user custom profile fields.
TL-14032 + Added supports_news functionality to the demo course format
TL-14041 + Email based authentication plugin is disabled in new installations
TL-14059 + "Assignment upgrade helper" administration page is now hidden
The "Assignment upgrade helper" tool was used to convert old assignment
activities, it can be still accessed directly via
https://yoursite.com/admin/tool/assignmentupgrade/index.php
TL-14096 + Restricted Basis logo file upload to web images
TL-14112 + Forced themes in categories will now apply to programs and certifications
TL-14115 + Flash animations are now disabled by default on new installs
TL-14122 + Only users who can manage company goal assignments will be shown current assignments when viewing a goal
TL-14152 + Appraisal snapshots created by DOMPDF now have a dedicated CSS stylesheet
TL-14156 + Errors in admin settings use the notification error template
TL-14169 + Improved display when installing Totara through the web interface
TL-14186 + Added new fancy behat logging in behat dataroot
TL-14187 + New featured links blocks will now display without a border by default
TL-14216 + Converted loading icons when editing a course to font icons
TL-14244 Updated default branding to Totara Learn
Changed language strings and logos to use the new product name "Totara
Learn" instead of "Totara LMS".
TL-14260 + Behat no longer gives false failures when text appears in a hidden element and its visible parent element
TL-14271 Fixed dynamic audience performance issue for user profile custom fields
TL-14275 Users can now cause self completion from within a course activity
This ability has been added to all core modules excluding Lesson and Quiz
(where a user should at least attempt the activity). Non-core modules will
need to be modified to support this functionality
TL-14277 totara_core\jsend now automatically removes invalid utf-8 characters and null bytes from received data
TL-14280 + Improved pix mustache helper to support JSON objects
TL-14288 Added logs relating to program and certification assignment changes
TL-14312 + Standardised notification colours in Badges
TL-14367 The login page now allows the configured registration plugin to control the onscreen signup message
TL-14368 Added an autosubmit handler to Totara forms
TL-14375 Embedded reports may now define custom required columns
TL-14383 Improved performance of reportbuilder job assignment content restraints
TL-14385 Added checks for missing program and certification completion records
The program and certification completion checkers have been extended to
detect missing and unneeded program and certification completion records.
Automated fixes have been provided to allow admins to correct these
problems. After upgrade, you should use the completion checker to fix all
"Files" category problems which are reported (if any). After all problems
on the site have been fixed, if new problems are discovered then they
should be reported to Totara support.
TL-14394 + Add global restriction initial display setting for report bulder
TL-14405 + Fixed known compatibility problems with PHP 7.2 in PHPUnit
TL-14420 + Allow Reminders to be accessed with the "moodle/course:managereminders" capability only
TL-14429 Added support for relative dates in new forms in behat tests
TL-14430 Converted the Reportbuilder source directory cache into a defined cache
TL-14445 Added full details link to review items in Appraisals
When goals, objectives or competencies are selected for review in an
appraisal, a link will now be available which opens the full details of
that item in a new window. This link will only be shown if the user has
permission to view those details normally outside the appraisal.
This feature has only been added for the aforementioned review types so
far.
When adding items for review for any review questions, these items no
longer have their own collapsible header and will instead be collapsible
under the entire review question. Non-question elements such as fixed text,
fixed image and profile information also no longer have a collapsible
header as part of this change.
For any custom themes that impact on Appraisals or Feedback 360, it is
recommended that you review the appearance of these areas following
upgrade.
TL-14709 Changed manager job selection dialog to optionally disallow new job assignment creation
TL-14726 Stopped duplicate calls to the core_output_load_template webservice
When requesting the same template numerous times in quick succession via
JavaScript, the template library was firing duplicate requests to the
server. This improvement stops duplicate requests from happening.
TL-14755 Added an environment test for misconfigured MSSQL databases
TL-14762 Added support for optgroups in Totara form select element
TL-14771 The length of the Seminar room name is now validated
TL-14781 Improved efficiency of job assignment filter joins
Previously, job assignment filters were joining to the user table. Now,
they can join to the user id in another table, such as the report's base
table. If data from the user table is not needed then that join will no
longer be needed in order to use the job assignment filters. These changes
potentially result in a small performance improvement.
TL-14789 + Improved readability of label, button, badge and alert UI components.
TL-14790 + Ensured block action icons conform to WCAG AA for text contrast
TL-14812 + Standardised order of Name and Short Name fields in User Profile Fields form
TL-14815 + New report source for individual job assignments
TL-14820 Improved unit test performance and coverage for all Reportbuilder sources
TL-14825 + Job assignment filters are now using consistently correlated subqueries
TL-14947 Improved unit test coverage of DB reserved words
TL-14971 + Removed deprecated create_function() calls
TL-14973 + Removed the $tryloadifpossible parameter from cache::has()
TL-14986 Added proficiency achieved date to competencies
Added new column called "timeproficient" to both the comp_record and
comp_record_history tables, this field defaults to the first time when a
user is marked proficient in a competency. There are also new "Date
proficiency achieved" columns/filters for the competency report sources,
and a date selector on the set competency status form allowing you to edit
the field. Please note that this field only works for future proficiencies,
but existing ones can be edited via the competency status form.
This change has also added a default value when the default competency
scale is created, so new installs will include a default value of 'Not
competent'.
TL-14988 Ensured that a competency status is displayed on the Record of Learning even if a learning plan has been deleted
TL-14991 + Fixed compatibility issues with MySQL 8.0 alpha
TL-14992 + Enhanced the progress_bar output component to allow it to be used as a static progress bar also
TL-15002 Added navigation links on the Approval plugin edit signup page
TL-15006 Cleaned up and improved dataroot reset in behat and phpunit tests
TL-15009 Added new faster static MUC cache for phpunit tests
TL-15012 + Added a new capability to upload courses
TL-15016 Improved the summary of the mod/facetoface:signupwaitlist capability to avoid confusion
TL-15049 + Database reset code for phpunit and behat was reimplemented
TL-15056 Added warning notice to the top of delete category page
TL-15087 + Improved access control ordering in a couple of embedded reports
TL-15099 + Added additional validation checking to update_hierarchy_item function
In certain edge cases this function was not updating the hierarchy item and
silently failing.
TL-15755 Unnecessary confirmation related emails are not sent when request is approved automatically in Self-registration with approval
TL-15757 + Improved the user experience when editing profile information through connected Totara sites
TL-15760 Updated hardcoded URLs to point to new community site location
Links to the community in code were updated from community.totaralms.com to
the new url of totara.community.
TL-15767 + Audience enrolment synchronisation is now performed by a dedicated scheduled task
Course enrolments for audience members when memberships change in an
audience are now synchronised by a dedicated scheduled task.
The timing of this task can be configured in the Scheduled tasks
interface.
The task itself can be manually executed by running the following as the
web server user on the command line:
{code}
php admin/tool/task/cli/schedule_task.php
--execute="\\enrol_cohort\\task\\sync_members"
{code}
TL-15768 + Seminar enrolment expiration is now processed by a dedicated scheduled task
Course enrolments for audience members when memberships change in an
audience are now synchronised by a dedicated scheduled task.
The timing of this task can be configured in the Scheduled tasks
interface.
The task itself can be manually executed by running the following as the
web server user on the command line:
{code}
php admin/tool/task/cli/schedule_task.php
--execute="\\enrol_cohort\\task\\sync_members"
{code}
Expiration of Seminar direct enrolments is now processed by a dedicated
scheduled task.
The timing of this task can be configured in the Scheduled tasks
interface.
The task itself can be manually executed by running the following as the
web server user on the command line:
{code}
php admin/tool/task/cli/schedule_task.php
--execute="\\enrol_totara_facetoface\\task\\process_expirations"
{code}
TL-15773 + Ensured body and link text colour contrast ratio is at least 3:1 (WCAG 2.0 A compliant)
TL-15774 + Improved readability of notifications in theme_basis
TL-15781 + Role definition caching now makes use of an MUC application cache
TL-15803 Added 'Target date' and 'Status' columns to Goal Custom Fields report source
This also allows adding these columns to exports of a user's goal
information. This can be done by adding these columns to the Goal Custom
Fields embedded report.
TL-15834 Improved Datepicker in Totara forms
TL-15880 + Removed rolechangedwarning css
TL-15888 + Behat and PHPUnit testing does not require superuser privileges for testing with PostgreSQL
TL-15902 + Behat configuration improvements
Developers can now run vendor/bin/behat without specifying of the
configuration file.
Chrome is now the default browser and all recommended setting are included
by default.
TL-15908 + Improved behat error detection
TL-15935 + Improved performance and reliability of behat testing
TL-15965 + Use BEHAT cookie to limit access to test sites
TL-15972 + Fixed brand notification warning in element library
TL-15974 + Upload message when editing a course now uses standard bootstrap fade
TL-15983 + Improved support for MariaDB 10.3
TL-15996 Improved test environment init when switching PHP versions
TL-16009 + Form elements used for password entry are using standardised unmasking logic
TL-16146 + Behat settings can be changed via behat_local.yml file instead of CFG settings
TL-16148 Improved performance of category management page
Bug fixes:
TL-12609 + Refactoring and fixing of custom user profile fields and filters in Reportbuilder
TL-12613 + Fixed plugin audience lock down
TL-12671 + Prevented 'Empty string behaviour in CSV' setting from being ignored in org/pos imports
TL-12685 + Fixed managing of reports that are not available to managers and admins
TL-12737 + Fixed duplicate ID HTML validation error when migrating databases
TL-12740 + Removed duplicate HTML id's when editing course groups
TL-12859 + Fixed HTML in Assignments to use standard CSS classes when viewing buttons
TL-12905 + Fixed tag columns in report builder so they work with tag collections
This restricts the number of tags visible in certain report so they only
display the tags that are part of the current collection assigned to the
tag area.
TL-12969 + Fixed problems with course form element validation
TL-13967 + Fixed styling of permissions added via AJAX
TL-14002 + Report table block reports take up the available width regardless of sidebar filters
TL-14016 + Removed deprecated table parameters when viewing lesson report
TL-14039 + When using Custom events, keyboard interactions no longer do the browser default action
TL-14043 + Prevented Atto autosave for not-logged-in users
TL-14067 + Fixed the Message text box auto size adjustment
TL-14070 + Fixed sending a message after another message failed to send
TL-14078 + Added fitem prefix to JS selector for validation handler for required date selectors
TL-14161 + Fixed location of dropdown arrow when editing tags
TL-14167 + Featured Links Block: Fixed spelling of Colour
TL-14177 + Adding an activity to a course uses font icons
TL-14215 + Stopped the add image button in atto trying to load the current page
TL-14224 + Fixed the instance_config_save method in the featured links block
TL-14248 + Fixed broken MSSQL temp table dropping
TL-14257 + Fix report with graph when Enable report builder graphs is disabled
TL-14301 + Fixed validation of date form fields when nested inside a fieldset
TL-14366 + Fixed reference to renamed Feedback module table feedback_tracking
TL-14402 + Type is not added automatically to embedded report columns with default heading
TL-14674 + Fixed certification membership report not showing "Not assigned" status
TL-14729 + Prevented a directory check error when configuring HR Import to use a database instead of a CSV file
TL-14933 + Fixed problems with temporary tables when using 4byte unicode collations in MySQL
TL-14990 + Fixed the course progress icon Report Builder column
TL-15025 + Corrected a spelling mistake in the Reportbuilder date filter help text
TL-15754 + Updated totara_plan/view_plan_component template to ensure single buttons are displayed correctly
TL-15844 + Added scroll bar when viewing mustache template list
TL-15883 + Ensured Flavours admin UI uses Bootstrap 3 variables
TL-15938 + Fixed several date related issues in behat
TL-15941 + Fixed a use of count() on an item that doesn't implement countable within assign, lesson and quiz modules
TL-15946 + Fixed a use of count() on an item that doesn't implement countable within report builder.
TL-15966 + Changed loading icon when uploading a file to a course to a font icon
TL-15969 + Added icons to notifications when on the site notifications page
TL-15971 + Fixed mform tags issue in element library
TL-15985 + Corrected Behat test regressions introduced by TL-8741.
TL-16159 + Added 'msedge' and 'chrome' CSS classes to allow browser targeting
API changes:
TL-10328 + Change the behaviour of the timestarted field for programs and certifications
Previously the prog_completion.timestarted column was being set when a user
was assigned to a program or certification, now it is set on the users
first action in the program. There is also a new
prog_completion.timecreated column which maintains the old data.
TL-10649 + core/block template now checks the same variable for the skip link and skip target
TL-11455 + Created a new web service 'core_message_delete_message'
TL-11456 + Added a course section deletion event
TL-11458 + Added enrol_self_get_instance_info web service function to the mobile service
TL-11459 + Added new option to get_enrolled_users web service to sort results by different fields
TL-11460 + Plugins can now extend the user navigation section of the navigation block
A new callback has been added that allows any plugin to extend the user
section of the navigation blocks.
Within code simply define a function called
_extend_navigation_user() within your lib.php file.
TL-11469 + The notify() function has been deprecated and now throws a debugging notice
TL-11470 + Ajax web service call results are now validated
For ajax scripts that need to return dynamic structures developers may use
NULL as the return description to side-step the validation. This is not
recommended for normal web services because some WS protocols need to
know the exact return type and structure.
TL-11472 + Added core_notes_delete_notes function to the mobile service
TL-11474 + Added new web service mod_glossary_get_glossaries_by_courses
TL-11475 + The XML-RPC web service protocol no longer uses Zend
TL-11476 + Created a new web service 'mod_forum_can_add_discussion' to the Forum module
TL-11477 + Added a webservice to glossaries to to return all glossaries within the given courses
TL-11480 + New web service API for mod_scorm_launch_sco
TL-11481 + Created new web service to return guest enrolment settings
TL-11484 + Created new web services mod_wiki_view_wiki and mod_wiki_view_page for the Wiki module
TL-11485 + Updated SCORM get_scorm_scoes function to also return SCO additional data
TL-11487 + Added the "defaulthomepage" setting to the get_site_info web service.
TL-11488 + Added a number of new web service functions for mod_glossary
The following new web service function have been added:
mod_glossary_get_glossaries_by_courses
mod_glossary_view_glossary
mod_glossary_view_entry
mod_glossary_get_entries_by_letter
mod_glossary_get_entries_by_date
mod_glossary_get_categories
mod_glossary_get_entries_by_category
mod_glossary_get_authors
mod_glossary_get_entries_by_author
mod_glossary_get_entries_by_author_id
mod_glossary_get_entries_by_search
mod_glossary_get_entries_by_term
mod_glossary_get_entries_to_approve
mod_glossary_get_entry_by_id
TL-11489 + Removed an obsolete file mod/lesson/reformat.php
TL-11491 + Removed the ZMF web service handler
TL-11516 + The get_file_url() function has been deprecated please call moodle_url::make_file_url() instead
TL-11517 + All core\log\sql_*_reader interfaces and classes have been removed
TL-11523 + mform validation was moved out of global JS scope
TL-11532 + Introduction of a new fragments API
This change introduces a new fragments API allowing for snippets of HTML
and JS to be requested from the server and utilised in JS.
Please note the preferred means of generating client site content is still
via templates and AMD modules. The fragments API should only ever be used
as a last resort.
TL-11563 + Writing to the legacy log store has been deprecated
The legacy log store is in its final lifespan and writing to it has been
deprecated.
If you are still using the legacy log store we strongly recommend moving
away from it as it will be removed in the next major release.
TL-11570 + Made folder action buttons structure consistent
TL-11577 + Created new web services for the wiki module to get subwikis
TL-11578 + Added new web service mod_quiz_get_quizzes_by_courses
Web service that lists all quizzes within a course. Hidden activities and
some sensitive settings such as password are only available to users with
sufficient capabilities.
TL-11579 + Added new web service mod_quiz_view_quiz
Web service allowing a quiz to be marked as complete for the user who is
making the request.
TL-11584 + Integrated new class-based notifications API
- Notifications are now output above the main content container by
core_renderer not at the top of it by totara_core renderer.
- CSS class names used to define notification type when passed to
totara_set_notification() e.g. 'notifysuccess' are now stripped
TL-11595 + Added new web service mod_quiz_get_user_attempts
Web service that returns data about attempts made to a given quiz for a
given user or all users.
TL-11596 + Created web services to get users best quiz grade
TL-11601 + Added new web service mod_quiz_get_combined_review_options
Web service that allows a quizzes review options to be viewed.
TL-11605 + Added a new "course" form element to Moodleforms
TL-11607 + Added a debugimap configuration option to allow debugging of incoming mail processing
For more information on this new setting please refer to config-dist.php
TL-11611 + Migrated to Behat 3
The behat library used for acceptance testing within Totara has been
upgraded from 2.5 to 3.
This is largely backwards compatible with the exception of the following
topics for which you will need to review any custom or third party behat
context code.
* Returning arrays of Given classes is no longer supported in definitions,
please refactor these definitions to use $this->execute() instead.
* The API for the TableNode class has changed, notably addRow() has been
removed.
* Named selectors have been deprecated, if you get debugging notices you
will need to change these calls to use either exact or partial selectors
instead.
TL-11613 + New quiz attempts can be started via web services
TL-11614 + New Web Service mod_quiz_get_attempt_data
TL-11615 + Added new web service mod_quiz_get_attempt_summary
Web service that allows a quiz attempt data to be viewed.
TL-11617 + Added web service functions to collaborative and individual Wikis.
TL-11618 + Created web services for wiki get page contents
TL-11619 + Added new web service mod_quiz_save_attempt
This web service enables quiz questions to be attempted.
TL-11626 + Box.net v1 migration scripts have been removed
The box.net version 1 to version 2 migration scripts have been removed from
Totara.
Support for version 1 was removed several years ago and these scripts have
existed for ample time.
TL-11627 + Added new optional parameter to external function mod_assign_external::get_assignments
New Optional parameter 'includenotenrolledcourses' when set to true
(default false) will return assignments for courses a user has access to
even if they are not enrolled.
TL-11633 + Allow any plugin to identify a scale as being used
The plugin in needs to implement a function
_scale_used_anywhere($scaleid); for this improvement to work.
TL-11637 + Added new web service mod_quiz_get_attempt_review
This web service allows quiz attempt data to be viewed.
TL-11641 + Updated the ADODB library to version 5.20.3
TL-11643 + Updated Mustache JavaScript from 2.1.3 to 2.2.1
TL-11644 + Upgraded the PHPMailer library to version 5.2.14
TL-11646 + Added new web services for triggering events in mod_quiz
TL-11647 + Created web services for quiz feedback to grade
TL-11652 + The Zend framework has been removed from Totara
Previously several modules from the Zend Framework were included in Totara.
These have all now been removed.
TL-11655 + Upgraded the HTML2Text library to version 4.0.1
TL-11656 + Upgraded the RequireJS library to version 2.1.22
TL-11657 + Upgrade lessphp to version 1.7.0.10
TL-11658 + Upgraded the Markdown library to version 1.6.0
TL-11659 + Updated the CAS library to version 1.3.4
TL-11660 + Upgraded jQuery Migrate to version 1.4.0
TL-11664 + Upgraded the Google APIs Client Library to version 1.1.7
TL-11665 + Added data attribute identifiers to user menu items
TL-11667 + Added new web service for checking access requirements to quizzes and attempts
TL-11676 + Updated the S3 repository to use version 0.5.1 of the S3 library
TL-11684 + Created new web services for site and course badges
TL-11687 + The moodle/blog:associatemodule and moodle/blog:associatecourse capabilities have been removed
These capabilities were previously deprecated and have been unused for a
very long time. Their definitions and descriptive strings have now been
removed.
TL-11710 + Added new webservice mod_wiki_get_subwiki_files
New web service that allows access to files embedded into wiki pages.
TL-11995 + Created new web services that enable the editing of wiki pages
TL-12001 + Removed deprecated web services functions.
TL-12025 + Stopped plugin external services being defined as core services by default
Previously web services defined by plugins were being added as a core
service. Now they will only be added as a core service if it is
specifically set to using 'services' =>
array(MOODLE_OFFICIAL_MOBILE_SERVICE).
TL-12197 + New dashboard events
These are the new events for tracking activity on My pages:
* dashboard_viewed
* dashboard_reset
* dashboards_reset
TL-12512 + Ensured quiz maximum grade field is compatible with assistive technologies
The quiz maximum grade field label explicitly declares and no longer wraps
its input
TL-12823 + $CFG->admin is now hardcoded to 'admin' and cannot be modified
TL-13000 + Updated the core_enrol_get_users_courses web services function to also return the course category
TL-13007 + Applied external_format_string to course full and short names within web services
TL-13015 + Added section number to the return of the web services call on core_course_get_content
TL-13019 + JSHint is no longer used when building JS, we have switched to ESLint
TL-13022 + Added mod_assign_list_participants to the list of mobile service
TL-13024 + Added new web service core_course_get_activities_overview
TL-13025 + Converted edit/tree/functions.js to AMD module grades/edittree_index
TL-13039 + Added new web service mod_assign_view_assign
TL-13040 + Added support for multiple ids search web services get_categories
TL-13088 + Introduce a new chart API and library
TL-13095 + Added additional events for calendar subscriptions
TL-13096 + Added additional events for course badges
TL-13101 + Grunt now lints CSS
TL-13105 + Better support for file areas in WS functions
TL-13108 + Added logging events to grade export
TL-13117 + Added additional events for course badges
TL-13135 + CSS lint has been removed, it was replaced by stylelint
TL-13258 + Add web service function get_courses_by_field
TL-13262 + The CSS optimiser has been removed and is no longer usable by themes
TL-13264 + Grunt now uses stylelint to check CSS style
TL-13271 + The RequireJS library has been upgraded to v2.3.2
TL-13276 + Assignment grade submission and participant info added to experimental mobile service functions
TL-13277 + Added add_rating web service functions
TL-13279 + The SimplePie library has been upgraded to v1.4.2
TL-13282 + Upgraded loglevel.js to 1.4.1 from 1.4.0
TL-13289 + Upgraded PHP mustache implementation from 2.9.0 to 2.11.1
TL-13292 + The AdoDB library has been upgraded to v5.20.7
TL-13309 + Upgraded PHPUnit to 5.5.x
TL-13364 + Switched the minify library used to shrink CSS and JS
The previously used minify library was no longer support.
We have now switched over to the MatthiasMullie\Minify library available at
https://github.com/matthiasmullie/minify
TL-13394 + The HTML Purifier library has been upgrade to v4.8.0
TL-13442 + Updated the MathJax filter to use version 2.7 by default
Sites using the previous default of version 2.6-latest will be updated to
2.7 automatically during upgrade.
TL-13443 + Added original course id to course_restored event
TL-13453 + New IP/ domain validation library for core
TL-13691 + Themes can now take control of how the "Add block" is displayed
TL-13941 + function resize_image() was renamed to totara_resize_image()
This affects 3rd party plugins only, this method was not used in standard
Totara distribution.
TL-13990 + Activity completion caching now uses MUC and not the session
TL-14151 + Imported latest dompdf 0.8.0 for use it in appraisals
TL-14202 + Deprecated unused faulty function facetoface_eventhandler_role_unassigned_bulk
TL-14413 Added two new methods to the DML to fetch recordsets and a total count at the same time
Two new methods have been added to the DML that allow for a recordset to be
fetched and simultaneously a total count returned in single query.
The two new methods are:
* moodle_database::get_counted_recordset_sql
* moodle_database::get_counted_records_sql
TL-15812 + Deprecated TOTARA_JS_PLACEHOLDER usage
As all supported browsers support the placeholder HTML attribute, the
placeholder JavaScript is no longer required.
Miscellaneous Moodle fixes:
TL-11450 + MDL-48451: Improved view count in course outline report
TL-11451 + MDL-51664: Improved external_util::validate_courses to prevent double course fetching
TL-11452 + MDL-44598: Added user details information when granting assignment extensions
TL-11467 + MDL-51900: In Single view gradebook report the Tab now moves focus in Grade or Feedback column instead of rows
TL-11478 + MDL-51698: Added breadcrumb trail when indexed by Google
If Totara site shows up in a Google (and possibly other search engines)
search result, the breadcrumbs will now show in the search result
TL-11482 + MDL-45712: Added result fields to the SCORM Interactions Report
TL-11483 + MDL-52560: Badges navigation is not added under Course administration if badges are disabled
TL-11490 + MDL-50916: Fixed information on lesson complete report
TL-11494 + MDL-52491: Prevented XMLRPC server and capabilities being enabled when the Mobile service is enabled
TL-11503 + MDL-52661: Improved accessibility when creating/editing grading aids
TL-11506 + MDL-52309: Grade History report now requires user to click submit button before displaying results
TL-11507 + MDL-372: Added support for pinned discussions in forums
TL-11508 + MDL-42473: Added group support to SCORM
TL-11509 + MDL-50464: Improved themeability of the RSS block
TL-11510 + MDL-52270: Fixed showing blind identities to users with mod/assign:viewblinddetails capability
When a trainer has the mod/assign:viewblinddetails capability, both
the participant identifier and actual user details are visible when
viewing assignments with blind marking turned on.
TL-11511 + MDL-52738: Added a previous button to Quiz attempt/review pages
TL-11512 + MDL-52383: Calendar option "calendar_lookahead" can now be set to one year ahead.
Users can now set their upcoming events look ahead to maximum one year
instead of 90 days.
TL-11513 + MDL-52780: Improved script origin email header to show where exactly message or email sending was triggered
TL-11514 + MDL-36404: Improved accessibility when grading with rubrics
TL-11515 + MDL-52269: Notification added to Assignments that are being marked in blind marking mode.
TL-11519 + MDL-46091: Merged the time-limit and password request into a single popup
* The "Are you sure you want to start this quiz now" popup is only shown if
the quiz has a time limit.
* If the quiz has a password as well as a time limit, the password request
and time limit warning are shown on a single popup.
TL-11520 + MDL-48621: Added a notice to the admin notification page if third party code is using Event API handlers
TL-11521 + MDL-35590: Improved aria support in the settings and navigation blocks
TL-11526 + MDL-48439: Improved the highlighting within capabilities overview table cells
TL-11527 + MDL-50620: Improved SCORM mastery score handling
Mastery score handling improved as per recommendation in
http://scorm.com/blog/2010/09/anatomy-of-scorm-minutiae-mistake/
TL-11530 + MDL-42395: Fixed display of previous assignment submission attempts
TL-11535 + MDL-51306: Added option to download all folder files as zip archive
TL-11536 + MDL-52996: Allow Atto customisation for special-purpose plugins
When adding an Atto editor to a form, a custom toolbar can be specified.
TL-11537 + MDL-48634: Added option to rescale grades when changing max grade in an activity
TL-11538 + MDL-44087: Forum now observes message notification settings for digest emails
TL-11539 + MDL-52818: Added a new divertallemail**cept configuration option
A new configuration option $CFG->divertallemail**cept has been added.
When used in conjunction with $CFG->divertallemailsto all emails will be
diverted unless they appear in $CFG->divertallemail**cept.
More information can be found in config-dist.php.
TL-11541 + MDL-51839: Removed old module gif icons
TL-11542 + MDL-52414: Improved how default Lesson settings are applied upon creation of a new activity instance
TL-11546 + MDL-50385: A new database index was added to the grade history table
On some sites with grade history tables the upgrade may take hours, if
that is the case it is strongly recommended to use CLI upgrade instead of
upgrade via web interface.
TL-11548 + MDL-33663: Improved the error message when negative grades are entered whilst using a marking guide
TL-11549 + MDL-53077: Added page action to body CSS ID in mod_assign
TL-11550 + MDL-51802: Standardised inline editing for tags and topic titles
TL-11552 + MDL-51214: Naming of Block "Latest news" and Course "News forum" have been changed to a more suitable "Announcements" in several langstrings.
TL-11553 + MDL-34160: The Forum email subject can now be further customised
These placeholders can be used in the 'postmailsubject' language string in
mod/forum/lang/en/forum.php:
* $a->sitefullname
* $a->siteshortname
* $a->courseshortname
* $a->coursefullname
* $a->courseidnumber
* $a->forumname
* $a->subject
TL-11555 + MDL-52990: Added site wide email mustache templates
TL-11556 + MDL-52208: The SOAP webservice handler no longer uses the Zend framework
TL-11557 + MDL-51929: Performance improvements to LTI, Data and Survey modules via new optional parameter in the validate_courses function.
TL-11558 + MDL-50484: Fixed duplicate ids on pages
TL-11561 + MDL-52806: Reviewing quiz responses now displays the correct answer
TL-11562 + MDL-49324: Added a progress bar when re-grading courses
When there are a number of activities and users enrolled in a course, a
progress bar is now displayed when re-grading the course.
TL-11565 + MDL-31989: Added global search as an experimental feature
Global search has arrived as a feature.
It requires the use of a separate search platform to provide users with a
indexed search of site content.
Currently the only supported search platform is Apache Solr.
TL-11566 + MDL-52397: Fixed assignment feedback change notification
TL-11568 + MDL-50887: Added antivirus plugins support
TL-11569 + MDL-50175: Optimised core pix images
TL-11571 + MDL-50794: Allow restriction of attached file types in a workshop
TL-11572 + MDL-51571: Improved the error handling of the LTI service module
TL-11573 + MDL-52346: Cache definitions now include information on whether they can be safely pointed at local storage solutions
TL-11574 + MDL-53072: Added option to choose whether to include suspended users when auto-creating groups
TL-11575 + MDL-52489: Zip file with downloaded assignment submissions now has separate folders for each student
TL-11576 + MDL-53050: Added a highlight to forum posts when viewed after navigating via a URL deeplink
TL-11580 + MDL-53172: Replaces static fields with in-place editable fields, in the form of simple toggles, select menus & string editing.
TL-11581 + MDL-53263: Added anchor to forum reply by post confirmation email link
TL-11582 + MDL-53208: Improved the performance of the Cache API
TL-11583 + MDL-53213: Improved the performance of the database meta information cache
TL-11597 + MDL-50032: Allowed external functions to add themselves to services
TL-11598 + MDL-53304: Only show quiz answer "Check" button when it can be available
TL-11603 + MDL-52718: Fixed an error in the course Community Finder block to ensure the correct sending of XML-RPC request
TL-11604 + MDL-52522: Added option to rescale overridden grades in grade categories
TL-11606 + MDL-27628: Multiple meta linked courses can now be added to the course enrolment
TL-11608 + MDL-52252: Activities and resources can now be tagged
TL-11612 + MDL-52386: Added support for a suspended field in LDAP authentication
TL-11620 + MDL-48680: Added new SCORM events: "Submitted SCORM status" and "Submitted SCORM raw score"
TL-11621 + MDL-53301: Improved performance when updating grading weights
TL-11622 + MDL-53252: Ensured Gradebook regrading is skipped if only feedback is changed
TL-11623 + MDL-53102: All outgoing email Message-IDs have been standardised to use the same format
TL-11624 + MDL-48838: Added request cache for grade categories
TL-11628 + MDL-51374: Improved the performance of the database layer when working with temptables
Prior to this change the use of temptables lead to the database meta
information cache being purged to ensure it was accurate after the temp
table changes.
The cache which contains information on all tables does not need to be
purged, instead in the case of temp tables simply ensuring the cache is
accurate to the tables in question is enough.
A new temp tables cache has been created and is used exclusively for temp
tables.
TL-11629 + MDL-53279: Grade categories are only regraded if they depend on the updated item
TL-11630 + MDL-48012: Added a Recycle bin tool for courses and activities
When enabled deleted courses and activities will be backed up immediately
prior to their deletion and then stored for a configurable period of time.
During this window, users with the required permissions will be able to
visit the recycle bin and restore the course or activity that they deleted.
The restoration will occur via the backup system which will result in the
information in the backup being restored.
After this window the backup will be automatically cleaned up by a
scheduled task.
TL-11631 + MDL-52869: Allow in-place editability of Course page Activity names.
TL-11645 + MDL-53543: Improved the performance of the grade categories cache
TL-11649 + MDL-53207: Display stock avatar instead of own user picture for messages from fake users.
TL-11650 + MDL-53315: Added support for IMAP namespaces in inbound messaging
TL-11654 + MDL-53260: The upgrade CLI script now has a --lang option
TL-11670 + MDL-45835: Ensured addition of groups to groupings is recorded in course logs.
TL-11673 + MDL-53209: Feedback activities can now be added to the site frontpage and taken by authenticated users
TL-11674 + MDL-53557: Fixed parsing of numeric bounds
TL-11678 + MDL-17955: New forum setting 'forum_enabletimedposts' that allows setting of display periods when posting a new forum discussion
TL-11679 + MDL-53633: Prevents mis-ordering of inline edited options for Forums.
TL-11681 + MDL-53056: Replacing HTML elements now cleans up YUI events
Previously, when the templates JavaScript library replaced a DOM element in
HTML it did not clean up YUI events. This change causes it to clean up
those events
TL-11682 + MDL-52954: Improved the Assignment grading interfaces
TL-11694 + MDL-53577: Improved error message when uploaded a file that is too large
TL-11697 + MDL-53571: Converted xpath literal escaping to use behat_context_helper::escape
In upgrading to Behat 3 the way in which we escape xpath literal strings
changed.
We now have to use an escaping class, luckily for us one has been made
available and a static shortcut to escape has been created.
All strings being used in xpath should be escaped by call
behat_context_helper::escape()
TL-11698 + MDL-53440: Provided a save button returning user to course approval list
TL-11702 + MDL-53382: Moved view all link to below the paging bar when viewing course participants
TL-11712 + MDL-45064: Added Preconfigured LTI Tool option to Activity Chooser
TL-11718 + MDL-53309: Improved performance of grade aggregation
TL-11723 + MDL-52490: Added a new option to download selected submissions in assignment grading interface
TL-11724 + MDL-47672: Ensured user identity fields are aligned in enrolled users table
TL-11967 + MDL-53599: Added support for Redis as a session handler
TL-11968 + MDL-52596: Added a 'maxperpage' site wide setting for mod_assign grading table size
TL-11971 + MDL-48506: The memcached store is now more respectful of other uses of the memcached server
TL-11974 + MDL-51354: Added help pop-up to site log report
Help text was added to describe the level options when searching the site
logs. Also, the option previously called 'Educational level' is now listed
as 'All events'.
TL-11975 + MDL-51267: Improved clarity of the user interface for file and url activity creation
TL-11980 + MDL-51603: Introduced new data formats and included the Spout library in support
This change saw two notable goals achieved.
* A new plugin type data formats has been introduced. This function just
like tabular exports in Totara and allow data streaming exports across
Totara. This both improves performance and allows for new export formats to
be more easily integrated.
* The introduction of the Spout library. The Spout library is used to
export data to common formats including CSV and XLSX. With its inclusion,
data formats can utilise it to easily export accurately to common formats.
TL-11981 + MDL-34925: The bulk user download now uses the new dataformat plugins for export
TL-11983 + MDL-53864: Fixed computation of averages on MySQL in feedback module
TL-11984 + MDL-52781: Improved code to ensure user details are validated consistently
TL-11992 + MDL-52035: Added a new experimental feature that allows Totara LMS to act like an LTI Provider
TL-11996 + MDL-52154: Improved LTI administration interface
TL-11999 + MDL-53738: The feedback module is now enabled by default
TL-12000 + MDL-53638: Major refactoring of the Feedback module
The feedback module has been refactored, making several significant backend
improvements.
* Conversion of forms to Moodle forms.
* Improved JS confirmation of actions.
* Improved the analysis pages.
* Cleaned up old and outmoded code.
* Improved RTL display of the module.
* Fixed several minor bugs.
TL-12009 + MDL-53967: Ensure that the getAllKeys method in the Cache API always returns a valid array
TL-12010 + MDL-53973: Added activities names to spreadsheets (in XLS and ODS format) during export
TL-12013 + MDL-53994: Fixed a missing include in the Feedback block
TL-12017 + MDL-54006: Removed warnings when importing valid csv via upload users
TL-12020 + MDL-54000: Prevented exception when grading assignments with inline comments
TL-12024 + MDL-54026: Fixed the type specified for some web service functions
Some web services functions were specifying an invalid type 'delete'
instead of 'write'.
TL-12027 + MDL-54056: Prevented add frequently used comment button appearing when none are available
TL-12036 + MDL-41640: Removed incorrect response time being displayed for anonymous feedback
TL-12043 + MDL-53914: Fixed debug messages when global search is indexing wikis
TL-12048 + MDL-54098: Fixed up uses of require_login() and PAGE->set_context within external functions
TL-12057 + MDL-53293: Dragdrop listeners now destroyed as part of component lifecycle to avoid incrementally duplicated listeners.
TL-12059 + MDL-54121: Correctly applied lockscroll to dialogues
TL-12069 + MDL-52253: Added a new default scale: Separate and Connected ways of knowing
TL-12071 + MDL-54128: Added LTI description as a help text to LTI activities in activity chooser
TL-12073 + MDL-54550: Added warning when LTI enrol module enabled without LTI authentication mode
TL-12089 + MDL-53896: Fixed issue in Quiz module when mbstring PHP extension is not enabled
TL-12091 + MDL-54061: Added encoding and separator to assignment offline grading upload form
TL-12098 + MDL-54632: Added option to show LTI tool in activity chooser or only as preconfigured external tool
TL-12105 + MDL-54666: Fixed the module grading form from losing data if it was deemed invalid
TL-12108 + MDL-54661: Fixed double escaping of course name in the assignment grading page
TL-12114 + MDL-54756: Fixed the moodle_url::make_file_url regression that made STACK question type fail
TL-12117 + MDL-54702: Added icons to LTI activities
TL-12123 + MDL-54859: Prevented debugging messages when creating new page in wiki
TL-12133 + MDL-54909: Set a different background colour from the editable page section in Assignment PDF annotation
TL-12138 + MDL-55027: Fixed access to the LTI provider if the consumer provides a broken image URL
TL-12139 + MDL-55028: Fixed incorrect Content-Length header in SOAP WSDL request response
Before this patch the Content-Length header would always be set to 1. This
fixes the calculation and now uses the correct content length.
TL-12140 + MDL-54991: Fixed invalid response for 'submissiongroup' in Assignment activity
TL-12142 + MDL-54868: Change of encoding behaviour of non-ASCII, UTF-8 encoded characters in XMLRPC web services
TL-12143 + MDL-55049: Added antivirus scan to files uploaded via webservice
TL-12149 + MDL-54795: Fixed JS errors being generated by the Atto auto save feature within the Assignment activity grading interface
TL-12165 + MDL-55245: Fixed ability to edit text in a comment within the assignment module grading interface
TL-12166 + MDL-55225: Corrected behaviour of get_plugins_data to ensure html text is correctly formatted (filtered) via external_format_text.
TL-12169 + MDL-55289: Fixed images and attachments in workshop example submissions
TL-12170 + MDL-55348: Changed Wiki activity section identifiers to be defined as PARAM_RAW.
TL-12171 + MDL-55374: Ensured UTF-8 encoding is used within the Assignment activity 'editpdf' grading.
TL-12173 + MDL-55322: Fixed dragging comments on mobile site in new grading interface in assignment module
TL-12174 + MDL-55314: Added error message if XML for LTI is broken
TL-12176 + MDL-55246: Fixed an issue submitting files with spaces in names within assignment module
TL-12182 + MDL-55520: Prevented grademax from reverting to 100 when editing activities with grades
TL-12187 + MDL-55385: Prevented PHP warnings when output_buffering ini setting is a string
TL-12188 + MDL-55668: Removed link to user profile when blind marking is enabled in assignment module
TL-12189 + MDL-55717: Removed leave confirmation for inline edit elements
No confirmation will be asked when leaving page with inline edit form
elements.
TL-12192 + MDL-55707: Prevented infinite loops when regrading
TL-12193 + MDL-54793: Updated webservices xmlrpc to use GET and POST correctly
TL-12194 + MDL-55832: Added filters to multichoice feedback activity questions
TL-12198 + MDL-55873: Change back username fields to use PARAM_RAW
TL-12201 + MDL-55519: Fixed maximum grade being reset when unlocking activity completion criteria
TL-12206 + MDL-55222: Added external_format_string to course names.
TL-12213 + MDL-56369: Improved the detection of problems in client output when running behat
TL-12215 + MDL-55630: Excluded users courses from user details in assignments.
TL-12217 + MDL-56208: Discussion topic form group visibility setting moved out of 'Display period' section
TL-12224 + MDL-55930: Prevented 'previous page' button being displayed in sequential mode
TL-12228 + MDL-54852: Fixed leave page warning in assignment grading when changes have been save
There is no longer a warning shown about leaving the page when the user has
saved their grading feedback.
TL-12232 + MDL-56363: Fixed grading restrictions for groups in assignment module
When users are separated into groups and group separation is set in the
assignment then in the grading interface the trainers can only access
learners in their group (this can be changed via capabilities).
TL-12408 + MDL-57163: Improved the feedback given when trying to install Totara without the php curl extension installed
TL-12480 + MDL-55720: Fixed potential PHP error caused by a module's _add_instance function
TL-12484 + MDL-56823: The redis session handler now correctly respects the session timeout setting
TL-12488 + MDL-56831: Fixed unsafe use of YUI module in module:mod_quiz/preflightcheck
TL-12489 + MDL-56899: Prevented DOM parsing warnings being output as errors
TL-12491 + MDL-56942: Fixed PHP error when requiring a self registered user to change their password on first login
TL-12497 + MDL-48055: Added checks for grade visibility in 'Outline' and 'Complete' reports
TL-12498 + MDL-55362: Prevented empty H2 title element on Site Home page when no title/title with empty spaces is used.
TL-12501 + MDL-33960: Fixed page scrolling when viewing LTI in the External Tool module
TL-12505 + MDL-56865: Prevented the Behat error handler from handling exceptions for the Behat utility scripts
TL-12507 + MDL-52186: Stopped processing unenrolments for suspended meta-course enrolments
TL-12510 + MDL-56972: Ensured question categories restored from backups are given a unique stamp
TL-12511 + MDL-57002: Enabled use of special characters in WebDAV download.
TL-12513 + MDL-52840: Changed default setting for assignsubmission_file max bytes to use site upload limit.
TL-12514 + MDL-53964: Made '0' an allowed label name in the 'Drag and Drop Markers' question type
TL-12517 + MDL-52199: Incoming email pickup will now fail rather than stopping quietly
This task will now throw an exception when the configuration is incorrectly
configured, resulting in the task being marked as failed in the scheduler,
rather than being marked as succeeding.
TL-12519 + MDL-56182: Fixed the URL comparison of LTI tool URL's to ensure the correct tool is found
TL-12522 + MDL-56346: Fixed typo in property name used in EditPDF
TL-12524 + MDL-54921: Fixed destination url being lost during self registration
TL-12527 + MDL-57169: Ensured images in course category descriptions are displayed correctly when resorting a course into a category
TL-12528 + MDL-57199: Removed duplicate ID attributes from Quiz Preview fieldsets.
TL-12529 + MDL-56893: Fixed editing grade item when 'Show minimum grade' is disabled and item has grades
TL-12530 + MDL-57209: Fixed undefined index notice when editing a user's profile with no options set
TL-12532 + MDL-56233: Fixed form identifier when mocking a form
TL-12533 + MDL-56836: SCORM player display mode retained after relogin
If a user logged out from the site when a SCORM activity is open in a
pop-up window, then after login this popup will be reused instead of
opening an additional one.
TL-12534 + MDL-56759: Improved display of course badges listing table
TL-12535 + MDL-45873: Fixed Database activity to allow "0" entries in the menu field to be recognised as valid
TL-12539 + MDL-56830: Ensured changes to block plugins visibility are recorded to the config log
TL-12542 + MDL-55782: Prevented long names breaking layout of group members form
TL-12543 + MDL-55906: Fixed resetting of filters on assignment module grading page
When clearing filters on the assignment module grading page, then
navigating away and returning, the cleared filters are now remembered..
TL-12544 + MDL-55809: Fixed preservation of author and license for images attached to glossary items across import/export
If the author and license of an image are specified they will now be
preserved across import and export actions.
TL-12545 + MDL-56566: Ensured the 'doanything' argument is set in the course overview block so site admin is handled correctly within mod_assign notification
TL-12547 + MDL-56525: Fixed forum posts link on user profile incorrectly showing 'no forum posts'
A users forum posts are still shown if the user has been unenrolled from
the course which the forum is part of.
TL-12549 + MDL-57074: Improved RTL in the file manager and folder activities
TL-12551 + MDL-57250: Provided admin settings when only one category exists
TL-12553 + MDL-54846: Added support for WAV files and cleaned up audio media support.
TL-12554 + MDL-46714: Properly order date & time fields in RTL
TL-12555 + MDL-56810: Fixed Assignment submission conversion problem when learner is unenrolled.
TL-12556 + MDL-57182: Fixed invalid login attempt not displaying correctly in the page footer
When using $CFG->displayloginfailures = true in the config.php file the
number of invalid login attempts should be displayed in the header and
footer. This fixes an issue where the message was missing from the footer.
TL-12558 + MDL-57257: Added validation for numerical input values in the Lesson module
TL-12559 + MDL-57125: Prevented JS error in comment report
TL-12560 + MDL-55062: Ensured 'Upload Users' admin tool does not incorrectly update authentication method when not included in the CSV upload file
TL-12561 + MDL-56912: Fixed non-required question types not submiting if empty in Feedback activty
TL-12562 + MDL-55575: Fixed show all displaying only the first page of glossary items
TL-12563 + MDL-55568: Duplicated chat sessions set to 'Do not publish' are not displayed in upcoming events
TL-12565 + MDL-55715: Separated subscriptions on calendars for different contexts
Subscriptions for the same calendar from different contexts (e.g. two
different courses) are maintained as separate subscriptions.
TL-12566 + MDL-57402: Fixes error when inserting a section heading after removing a page break.
TL-12567 + MDL-53044: Prevent users from using 'Cancel' to bypass password expiry
TL-12568 + MDL-52098: Fixed audience sync course enrolment method ignoring status
TL-12573 + MDL-57080: Fixed expected completion dates not updating when resetting courses
The course completion criteria 'Date' and activity completion criteria
'Expected completed on' will be shifted by the offset between the previous
and new 'Course start date' when resetting a course.
TL-12575 + MDL-50643: Fixed redirection bug when external SCORM window closes
Previously when an external SCORM window was closed, it redirected the
Totara main page to the SCORM provider's main page. This has been fixed to
redirect to the Totara course page instead.
TL-12576 + MDL-55955: Ensured override events in quizzes are not duplicated
TL-12580 + MDL-49557: Fixed AICC prerequisite handling
TL-12582 + MDL-47198: Fixed intermittent PHP warnings during formatting of header in cURL requests
TL-12630 + MDL-46654: Prevented debug output when user cannot subscribe to forum digests
TL-12631 + MDL-55628: Updated completion cache to use simpledata
The completion cache is currently not marked as simpledata. On the course
page it is frequently retrieved hundreds of times which results in many
calls to the slow unserialize function. By making a slight change to the
data format (using arrays instead of objects) we can mark it as simpledata,
which will avoid using unserialize.
TL-12632 + MDL-55581: HTML audio and video "track" tag are whitelisted in HTML purifier
TL-12988 + MDL-54563: Prevented course completion blocks from being added to non-course pages
TL-12996 + MDL-45762: Fixed error when accessing a conditionally hidden section
TL-13003 + MDL-54654: Fixed invalid styling in some course activities
TL-13005 + MDL-54590: Added installation instructions for allowed characters in database name
TL-13012 + MDL-54865: Added user profile link to user name in gradebook user report
TL-13014 + MDL-54855: Added missing preventsubmissionnotingroup field in mod_assign_get_assignments
TL-13018 + MDL-54947: Improved binary data handling in PostgreSQL database driver
TL-13021 + MDL-48944: Added submission completion criteria to survey activity
TL-13023 + MDL-50758: Ensured all correct answers are shown in multi-choice question
TL-13030 + MDL-49029: Added mod/choice:view to allow visibility control over Choice course activities
TL-13031 + MDL-11369: Added Choice start and end events to the course calendar
TL-13032 + MDL-54891: Allowed admin to set defaults and lock settings for Activity results block
Admins should be aware that enabling a lock on a setting will only prevent
the setting on existing Activity results blocks from being changed, and
does not change the settings in those blocks to the default value.
Consequently, if a locked setting on an existing block contains a value
which is not the default, it cannot be changed to the default. Care should
be taken if the intention is to enforce privacy by restricting visibility,
such as if the "Privacy of results" setting is to be locked on "Anonymous
results".
TL-13033 + MDL-54671: Improved formatting of CSS in the atto editor and progress report
TL-13035 + MDL-53222: Improved UI of global search administration pages
TL-13042 + MDL-14448: Added the mod/lesson:view capability to allow visibility control over Lesson course activities
TL-13043 + MDL-31356: Implemented several small improvements in the IMS Enterprise enrol plugin
The following improvements have been made:
* Ability to update a course Full Name
* Ability to update a course Short Name
* Ability to create nested categories during course creation
* Ability to update a user record (all fields that the plugin already knew
about except username)
* Ability to set/update an authentication type for a user (during creation
and updates)
TL-13046 + MDL-55251: Added the mod/chat:view capability to allow visibility control over Chat course activities
TL-13048 + MDL-55200: Added the display of coordinates for Drag and Drop Markers question
TL-13049 + MDL-55158: Start and end dates for Database course activities are now shown in the calendar
TL-13056 + MDL-55254: Added the mod/data:view capability to allow visibility control over Data course activities
TL-13090 + MDL-55287: Fixed display when search engine is not enabled on global search admin pages
TL-13091 + MDL-55140: Improved Choice Activity to allow open and close dates to act separately
TL-13100 + MDL-53572: HTTP URL setting for the MathJax filter removed
The MathJax filter previously allowed both an HTTP and HTTPS setting for
its URL. The HTTP URL was accessed if the Totara site was run over HTTP.
This was unnecessary as MathJax can still be retrieved via HTTPS
regardless.
If the HTTP URL was left as it's default, you will not have to change
anything. If it was customised, you will be prompted to set the HTTPS URL
following upgrade, given that this will always be used now and may also
require a custom value.
TL-13106 + MDL-3782: Improved 'cloze' Embedded answers question type to allow for multiple answers
TL-13107 + MDL-54606: Added support for Redis as a session cache
TL-13109 + MDL-55464: Added the mod/label:view capability to allow visibility control over Label course activities
TL-13113 + MDL-55196: Ensured database activity data is pre-processed correctly on import
TL-13116 + MDL-55533: Fixed feedback on 'cloze' Embedded answers question type with only one correct answer
TL-13121 + MDL-18592: The choice activity now allows teachers to create/change answers on the learner's behalf
TL-13127 + MDL-44712: Improved Multi-SCO completion handing in activity completion
TL-13133 + MDL-53634: Changed per-course forum digest options to use inplace_editable
TL-13137 + MDL-38105: Improved Rubric grading calculation method to allow negative score
TL-13140 + MDL-53724: Improved padding with dock enabled in bootstrapbase theme stack
TL-13142 + MDL-55288: Fixed behat i_delete_file_from_filemanager to work with file manager in settings.php
TL-13143 + MDL-55236: Allowed assignment subplugins to back up configuration-related files
TL-13145 + MDL-52798: Moved calendar preferences to the user preferences page
TL-13146 + MDL-37669: Added user option to mark posts read, or not, when forum notifications are sent
TL-13148 + MDL-55415: Moved course menu permissions check to new API function
TL-13150 + MDL-55122: Removed a duplicated updown variable in enrollib
TL-13151 + MDL-55922: Improved static caching performance
TL-13154 + MDL-55727: New Modal library added
TL-13155 + MDL-45752: Added new events when viewing and searching courses
TL-13156 + MDL-55466: Improved alternateloginurl setting to use moodle_url class to allow relative local addresses starting with /
TL-13159 + MDL-55866: Ensured that the editor enable state for database activities is remembered for each instance
TL-13163 + MDL-55916: Updated Maintenance Mode to use HTTP 503
TL-13164 + MDL-51361: Made default settings for course imports configurable
TL-13171 + MDL-55124: Added dbhandlesoptions parameter to not send database options
PostgreSQL connections now use advanced options to reduce connection
overhead. These options are not compatible with some connection poolers.
TL-13176 + MDL-55327: Created a duplicate page option for use within the Lesson activity
TL-13195 + MDL-55474: Converted search form to use templates in block_search_forums
TL-13200 + MDL-55495: Made url_select a templatable
TL-13218 + MDL-55701: Converted help icon to a mustache template
TL-13221 + MDL-55594: Added templates for forum advanced search
TL-13228 + MDL-55831: Converted action menu to templates
TL-13237 + MDL-55593: Added aria attributes when dragging and dropping
TL-13239 + MDL-51948: Improved RTL support in admin settings
TL-13244 + MDL-45890: Added additional events for external blogs
TL-13293 + MDL-56270: Added additional chapter information to in-page navigation within the book activity
TL-13302 + MDL-56293: Ensured that the book activity table of contents block is shown on all editing pages
TL-13303 + MDL-22078: Added the ability to set a course end date
TL-13305 + MDL-45388: Warning shown in the footer if the site is operated with theme designer mode on
TL-13311 + MDL-55746: Allowed a theme to blacklist a set of tags
TL-13326 + MDL-55582: Added no results message when there are no results in search on user's message page
TL-13344 + MDL-55583: Prevented enter reloading the page in search when searching a user's messages
On the users messages page hitting enter in the search box caused the page
to be reloaded. This behavior is now prevented providing a better user
experience.
TL-13361 + MDL-56005: Themes can provide SCSS snippets for inclusion in the final CSS
TL-13365 + MDL-30179: Added the ability to view the grade report as another user
TL-13368 + MDL-56274: Fixed contact tab being incorrectly disabled when all message were deleted on users messaging page
TL-13370 + MDL-56057: Fixed manage global search page incorrectly reporting search areas as being disabled
TL-13371 + MDL-56324: Fixed the next/previous page navigation buttons in editpdf of the Assignment module
TL-13372 + MDL-54945: Workshop submissions can be exported as a portfolio
TL-13380 + MDL-54682: Added new messaging and notification interfaces
Users can now navigate to new messaging and notifications interfaces via
icons next to the user menu.
The messaging interface allows for live updating of conversations between
users and viewing profile details and online status when permissions allow.
TL-13385 + MDL-56295: Deletion of book chapters now uses popup confirmation
TL-13387 + MDL-53752: Improved formatting of chapter numbers in the book activity
TL-13392 + MDL-48629: Changed hyphen separator to arrow for matching quiz answers
TL-13397 + MDL-56100: Added recent activity support to the folder module
The recent activity block now shows activity in the folder module.
TL-13407 + MDL-56082: Expose external authentication methods in login block
TL-13415 + MDL-56444: Fixed failure in logstore_standard_store_testcase::test_events_traversable
TL-13417 + MDL-52777: User tours
User tours can now be created within Totara.
These tours are experienced by users upon meeting certain criteria such as
logging in, holding a certain role, and when browsing specific areas of the
site.
When encountered they feed the user with information and direct them
through elements on the site, or basic navigation.
TL-13429 + MDL-56538: Fixed popout windows of new assignment with "Marking guide" grading method
TL-13430 + MDL-54833: Workshop: Enhance accessibility of the userplan widget
TL-13434 + MDL-56395: Gradebook: Make long item titles more accessible
TL-13439 + MDL-55981: Removed the site:accessallgroups capability from teacher
TL-13445 + MDL-50888: Clam Antivirus can now be run via Unix socket
TL-13456 + MDL-56597: Added bootstrap classes to upcoming maintenance alert
TL-13477 + MDL-55799: inplace_editable: add form-control class to fields
TL-13480 + MDL-48468: Added a Redis cache store
TL-13486 + MDL-56149: Prevented risk icons from wrapping when setting permissions
TL-13489 + MDL-56297: Fixed size of URL field in external blog setup page
TL-13500 + MDL-56670: Added padding class to end of lesson activity links to ensure they are displayed correctly
TL-13501 + MDL-56699: Fixed error when clicking on activities in the navigation block
TL-13502 + MDL-56273: Fixed issue where cache purge_all is causing tests to fail
TL-13511 + MDL-56654: Fixed missing RSS link in the blog page
TL-13514 + MDL-56576: Fixed requiremodintro admin setting not saving correctly
TL-13523 + MDL-29795: Added user/group overrides for mod/assign
TL-13536 + MDL-56846: Added bootstrap classes to survey module
TL-13539 + MDL-48498: cURL request addresses can be blacklisted via admin settings
TL-13550 + MDL-56766: Improved calendar export labels to be more descriptive of the fields
TL-13555 + MDL-56855: Removed invalid formats from video JS plugin default
TL-13558 + MDL-56725: Improved styles for Database activity module
TL-13559 + MDL-56888: Fixed workshop Leap2A portfolio package not fully importing into Mahara
TL-13566 + MDL-56895: Improved format of portfolio buttons
TL-13569 + MDL-56921: Alignment of images is not switched when using Atto edtior with a right-to-left language
TL-13584 + MDL-55848: Removed a problematic class_exists check in the Assignment feedback module
TL-13587 + MDL-56193: Updated look and feel of enrol users dialog within a course
TL-13618 + MDL-56870: Fixed viewing deleted activity modules when the course recycle bin is enabled
TL-13621 + MDL-56767: Added bootstrap classes to block_login
TL-13631 + MDL-57051: Fixed check_module_updates to not return unchanged files by ignoring folders
TL-13646 + MDL-56986: Removed unncessary duplicate edit icon for course summary block
TL-13660 + MDL-57093: Fixed styling problems with forum notifications
TL-13677 + MDL-55324: Videos uploaded using Atto editor now allow for multiple subtitle tracks
TL-13695 + MDL-57176: Prevented duplicate blocks being added when required by the theme
TL-13698 + MDL-57174: Ensured edit settings link is displayed for Lesson activities when required.
TL-13702 + MDL-56829: Fixed display of embedded video player in iOS
TL-13711 + MDL-57127: Increased memory allowance when generating CSS
TL-13721 + MDL-57101: Fixed embedded YouTube videos in AJAX interface
TL-13724 + MDL-57232: Themes can now control which blocks are protected
TL-13730 + MDL-56778: Improved RTL when enrolling users
TL-13731 + MDL-57171: Used Bootstrap classes for the labels in the Status column of the Server checks/Environment pages
TL-13752 + MDL-57474: Fixed invalid Message-ID header in forum post notifications
TL-13760 + MDL-57532: Added missing bootstrap classes to manage calendar subscription buttons
TL-13766 + MDL-40132: Fixed a fatal error within forms when using a comparison rule
TL-13768 + MDL-57601: Fixed an error in the grade report for ungraded quiz activities without the view hidden permission
TL-13773 + MDL-56271: Fixed recaptcha when used with anonymous feedback
TL-13775 + MDL-57608: Fixed videojs include to be lazy loaded on demand
TL-13779 + MDL-53991: Ensured that deleting an imported course calendar event, deletes only the required events for the current course
TL-13780 + MDL-57374: Pasting text into atto editor no longer causes other formatting to be removed
TL-13786 + MDL-57677: Fixed last forum post user being set to editor rather than post author
TL-13787 + MDL-45821: Fixed checking lesson_status for multi-sco SCORM activities
TL-13788 + MDL-57604: Fixed incorrect user being selected from chooser in Assignment activity
TL-13789 + MDL-57415: Added bootstrap classes to buttons on participants page
TL-13792 + MDL-57639: Fixed forum_tp_mark_post_read function call to use correct variable name
TL-13798 + MDL-55915: Several improvements to fullname display when the user holds the viewfullnames capability
TL-13800 + MDL-46782: Start from the first uncompleted SCO when re-entering Multi-SCO SCORM
TL-13801 + MDL-57587: Fixed a bug where feedback images when reviewing a quiz attempt were not showing
TL-13802 + MDL-57660: Fixed selected forum option not being preserved when using forum search
TL-13805 + MDL-57785: Disabled SCORM nav refresh when nav display is disabled
TL-13807 + MDL-36233: Fixed bug where course overview block inconsistently lists "Submissions not graded" link for assignments
TL-13808 + MDL-57296: Fixed errors when collapsing grade categories
This fixes errors caused when collapsing grade categories in the grader
report as a user without 'moodle/grade:viewhidden' capability.
TL-13809 + MDL-57588: Fixed quiz so egrading maintains question flags
TL-13811 + MDL-35978: Updated expandable comments to announce change when toggled
TL-13817 + MDL-56841: Fixed display of edit and download buttons inline for folder resource
TL-13819 + MDL-55867: Added sort to list of activities in the activity results block
TL-13831 + MDL-57354: Set continue button to render as a primary button
TL-13833 + MDL-50729: Fixed incorrect regrade event being assigned to the wrong user
The regrade event is now assigned to the system user.
TL-13837 + MDL-57030: Added ability to auto re-run failed behat scenarios
TL-13861 + MDL-51833: Improved performance when checking permissions for event monitoring tool
TL-13873 + MDL-58040: Removed incorrect use of global $PAGE in blocklib.php
TL-13886 + MDL-18599: Forum owner is not shown when forum type is single discussion
TL-14565 + MDL-57658: Fixed calendar unit tests
TL-14568 + MDL-57429: Badges now uses the new openbadges authentication service
TL-14571 + MDL-57994: Fixed "Number of announcements" course setting not reloading correctly
TL-14572 + MDL-57254: Ensured Choice activity checks correctly when results should be displayed
TL-14573 + MDL-57419: Hitting enter no longer sends messages within the messaging interfaces
TL-14575 + MDL-37168: Fixed LTI activity quick edit title
TL-14576 + MDL-58273: Fixed incorrect capability name used when enabling and disabling LDAP enrolment instances
TL-14579 + MDL-58050: Fixes message transaction handling when the user has no messages
TL-14586 + MDL-58257: Fixed course search when search query contains a hyphen
TL-14588 + MDL-58160: Improved the performance of category caching
TL-14589 + MDL-58325: Changes to site text editor settings are recorded in the config log
TL-14590 + MDL-58227: Fixed error when getting most recently completed answers in feedback module
TL-14592 + MDL-58264: Fixed incorrect SQL syntax in question engine
TL-14594 + MDL-41809: Course grade items are now formatted using the course context
TL-14595 + MDL-55499: Forum emails are now formatted using the correct context
TL-14598 + MDL-58180: Ensured Statistics Role names are passed through the format_text function
TL-14599 + MDL-58104: Fixed assignment bug in which attempt settings disappears when switching between attempts in grader interface
TL-14600 + MDL-55939: Removed unnecessary permission check on site course during external service call
TL-14601 + MDL-56370: Added back ability to change answers in Feedback module when not anonymous
TL-14602 + MDL-57858: Fixed assignment bug in a scale grade was not updated
TL-14603 + MDL-55950: Emails regarding completed feedbacks now link to only completed feedbacks
TL-14605 + MDL-58489: Fixed coding bug in the OAuth upgrade token process when the authentication server cannot be reached
TL-14607 + MDL-58461: Upgraded the MathJax library use a fixed CDN version
TL-14608 + MDL-57616: Fixed drag and drop of media files to course page.
TL-14609 + MDL-58555: Included web service name when making ajax requests
TL-14612 + MDL-58171: Fixed use of multilang in Course participation report headers.
TL-14613 + MDL-58244: Improved the logout process when using Shibboleth for authentication
TL-14616 + MDL-58394: Fixed filter processing not respecting sort order in some cases
TL-14619 + MDL-58486: Fixed lingering references to unset user preferences on the current user object
TL-14622 + MDL-58559: Fixed a missing string error in the community block
TL-14624 + MDL-58116: Forum emails are no longer sent by the noreply email address when they shouldn't be
TL-14626 + MDL-58096: Optimised performance of Course statistics report when loading list of courses
TL-14628 + MDL-58278: Fixed assignment bug in which data was not saved when marking workflow state as not released
TL-14633 + MDL-58613: Prevented debug messages from being displayed in Workshop random allocation.
TL-14634 + MDL-58636: Fixed incorrect drag and drop constraint in course management
TL-14636 + MDL-57793: Improved Calendar repeating rule unit tests
TL-14637 + MDL-58556: Fixed LDAP authentication creating forced password change loop
TL-14638 + MDL-58668: Fixed how multi choice answers are processed in Lesson activity
TL-14639 + MDL-54849: Fixed the 'move to next question' option in the Lesson activity
TL-14640 + MDL-58691: Fixed define checking for external_settings used by web services
TL-14641 + MDL-58372: Fixed error when loading files via WebDAV
TL-14642 + MDL-57807: Fixed search in database activity when not selecting an option in a menu field type
When performing a search in the database activity leaving the option on
"custom-select" which is the default option will result in no results being
returned in the search. The change will now correctly return all matching
records treating the unselected option for the menu as a wildcard.
TL-14643 + MDL-58698: JavaScript loads from language packs with 2 underscores (eg. en_us_k12)
TL-14644 + MDL-58701: Used proper defaults for serving files when webserver is used in externallib constructor
TL-14645 + MDL-58628: Fixed incorrect values being returned by mod_quiz_get_quizzes_by_courses quiz webservice when quiz is closed
TL-14650 + MDL-55468: Added the option to export analysis to Excel back to the Feedback module
TL-14651 + MDL-57704: Stopped forcing SSLv3 in LTI provider
SSLv3 is considered outdated and insecure so we shouldn't be enforcing the
use of it.
TL-14652 + MDL-58172: Ensured responses export respects user identity fields setting and viewuseridentity capability
TL-14653 + MDL-58635: Ensured external blog edits belongs to current user.
TL-14656 + MDL-58650: Fixed messages being marked as read when user receives emails about them
TL-14657 + MDL-50670: Fixed some default options not being correctly applied with custom course formats
TL-14658 + MDL-58434: Correct display of user responses to numeric question type in Lessons.
TL-14659 + MDL-35913: Front page layout is set before any output is sent
In some rare occurrences, the front page layout was being set after some
code had been displayed. This fix ensures the layout is set before any
output is sent
TL-14660 + MDL-58772: Prevented anonymous answers from being overwritten in feedback module
TL-14663 + MDL-58514: The assignment submission page and grading table now use consistent override logic
TL-14664 + MDL-56675: Memcache is no longer used as the cache store in known bad configurations
There is a compatibility bug between the Memcached extension and the
Memcached server.
If you are using php-memcached extension > 3.0.1 and Memcached library >
1.4.22.
In this situation the cache will not be purged when required if the
configuration has been configured to facilitate a shared cache.
As this could lead to stale caches code has been amended to prevent the
memcached cache store from being used in situations where we know it is
affected.
TL-14665 + MDL-58431: Fixed error in Lesson activity for the Jump to random content page option
TL-14670 + MDL-58259: Added permission check for adding attachments to forum posts via web services
TL-14671 + MDL-58807: The activity results block now correctly formats the activity name
TL-14833 + MDL-58780: Removed AS table alias in assignment grading table query
TL-14838 + MDL-58920: Fixed multilang support for Calculated questions' name
TL-14840 + MDL-58852: Apply multilang filters in choice activity charts
TL-14842 + MDL-58916: Fixed context filters when viewing user custom field data
TL-14845 + MDL-58756: Made role names in Statistics reports compatible with the Multi-Language filter
TL-14846 + MDL-58723: Improved testing of recurring events on the calendar
TL-14847 + MDL-58811: Fixed quiz duplication with files in their links
Fixed an issue with legacy file.php URLs from moodle 1.9
TL-14848 + MDL-57558: auth LDAP now recognizes lowercase attribute names
TL-14849 + MDL-58776: Added bootstrap classes to buttons on manage tags page
TL-14850 + MDL-58795: Ensure duplicates are not returned when sorting the grader report table
TL-14851 + MDL-58947: Fixed label link URLs that are displayed in global search results
TL-14852 + MDL-57957: Show feedback file in absence of grade item
TL-14853 + MDL-58986: Added bootstrap classes to buttons on quiz comment page
TL-14854 + MDL-56617: Disabled grade to pass check if CBM is used in the quiz activity.
TL-14855 + MDL-56973: Fixed title being locked when creating a new wiki page if language is forced for a course
TL-14856 + MDL-58922: Fixed multilang support for calculatedmulti question name
TL-14858 + MDL-58921: Fixed multilang support for Calculated question name
TL-14860 + MDL-58577: Fixed multilang support for role names in head of the statistics report
TL-14862 + MDL-49040: Fixed incorrect truncation of feedback comment in grader report
When quick grading and AJAX were enabled for the grader report if a
feedback comment contained a '&' then it would be truncated and only the
text before the '&' character would be saved.
TL-14863 + MDL-58997: Fixed the mutlilang on group names in the calendar
TL-14864 + MDL-49988: Fixed wiki page layout if html contains line breaks
TL-14865 + MDL-54887: Improved the formatting of exported multi-lang calendar events
TL-14870 + MDL-58900: Fixed incorrect overrides ordering within the assignment module
TL-14871 + MDL-58646: Updated PHP CSS parser library to newer version
TL-14872 + MDL-59086: Added bootstrap classes to buttons in grader report
TL-14873 + MDL-58658: Fixed cache static acceleration when setting empty but not false data
TL-14875 + MDL-59154: Lock for all caching builds
TL-14877 + MDL-46322: Only list enrolled graders as potential markers
TL-14880 + MDL-40015: Fixed 'Duplicate course' web service description
TL-14882 + MDL-51691: Feedback comments can now be deleted with save quick grading
TL-14883 + MDL-58136: Added a course completion cache
TL-14885 + MDL-58991: Ensured statistics report uses same date handling on chart rendering
TL-14886 + MDL-58523: Deleting responses can now cause feedback activities to be marked incomplete
TL-14887 + MDL-59140: Added "More..." link into "My Courses" navigation block, when not all courses are listed
TL-14889 + MDL-59142: Added caching for post-processed CSS in MUC
TL-14891 + MDL-44961: Fixed log dates being rolled forward when restoring course backups
TL-14893 + MDL-51917: Activities returned by get_criteria are now ordered the same as in the course
TL-14894 + MDL-59173: Changed the default of 'params' from null to array in the set_sql function of the table_sql class
TL-14896 + MDL-58729: Improved performance of mysql_collation admin script
TL-14898 + MDL-58472: Ensured videojs media player is initialised on first page rendering to avoid failure on slower networks
TL-14899 + MDL-59005: Fixed extraction of zip files with Cyrillic file names
TL-14900 + MDL-58952: Fixed registration form language default
TL-14901 + MDL-59269: Fixed problem uninstalling language packs with numbers in their names
TL-14903 + MDL-49484: Fixed header wording for forms when adding/editing pages in a Lesson activity
Header text now show the type of page or question you are creating/editing
instead of the name of the activity.
TL-14904 + MDL-58813: Ensured the web service core_course_create_courses initialises all section records
TL-14906 + MDL-40818: Change login requirements on calendar pages to stop automatic guest logins
TL-14907 + MDL-56046: Fixed export to Excel of Quiz reports
TL-14909 + MDL-59296: Searches on LatLong fields in Data module can only be for filled values
TL-14913 + MDL-59073: Workshop: Prevent submission creation without file/content
TL-14915 + MDL-32151: Fixed invalid references to 'nocourseid' language string throughout codebase
TL-14917 + MDL-57809: Added NO_OUTPUT_BUFFERING to progress bar output
TL-14918 + MDL-59308: Module completion now passes the module context to events when deleted
TL-14919 + MDL-59409: Fixed access control on admin categories
TL-14922 + MDL-58651: logstore_database: Add ability to not send database options
TL-14923 + MDL-58286: Fixed check for pagination in ldap enrollment
TL-14924 + MDL-59294: Improved markup of login page
TL-14926 + MDL-57021: Using password instead of password unmask fields where appropriate
The following fields now use 'password' instead of 'password unmask'
field:
* Entering passwords during self-registration
* Entering enrolment keys via the self enrolment and guest enrolment
plugins (this applies when end users supply the keys, not course
administrators creating them).
TL-16034 + Reverted MDL-54849 to return behaviour of next question button in lessons
Contributions:
* André Yamin at Kineo NZ - TL-6535
* Artur Rietz at Webanywhere - TL-14271, TL-14398
* Barry Oosthuizen at Learning Pool - TL-14122, TL-14445
* Eugene Venter at Catalyst NZ - TL-9300, TL-10502, TL-11099, TL-11121
* Francis Devine at Catalyst NZ - TL-14430
* Jo Jones at Kineo UK - TL-14432
* Lee Campbell at Learning Pool - TL-2276