Some output classes require pre-rendered elements. In some cases, those
elements require some screen reader extra texts (especially in buttons).
The st_text method allow the outputs to create those inline tags without
using html_writer. Furthermore, the current screen reader classes are
based on bootstrap, having them isolated in renderer methods allow
themes to implement alternatives accessibility HTML structures.
The current I am on course homepage with editing mode loads twice the
course page. This patch prevents this from happening by going directly
to editmode.php.
Add config option to embed YouTube links using the youtube-nocookie.com
YouTube domain. This will stop extra YouTube cookies from being added
to the users computer it also stops calls to certain add tracking sites.
This commit addresses a number of issues with the Matrix user manager.
These are, unfortunately, tough to break out into smaller commits.
The following issues are addressed:
Matrix usernames should be kept intact in the profile field. Prior to
this change, usernames were mangled and the hostname removed entirely.
Instead the hostname was added back when it is used. This approach is
not suited to a case where a user inserts their own matrix username on a
federated server.
Unit tests should have the minimum of requirements and dependencies.
Prior to this change, unit tests were setting up an entire mock system
which was completely unnecessary. These unit tests should only test the
static methods that they claim to test, not the entire communication
subsystem, matrix API, matrix client, processors, and providers.
Matrix host names should not be curtailed. Prior to this change the
hostname of the matrix server was modified if it contained any .
characters. For example, the following changes were previously made:
| hostname | before | after |
| ------------------ | ------- | ------------------ |
| matrix.example.com | matrix | matrix.example.com |
| www.example.com | example | example.com |
I believe that the original intent was to strip the www from the front,
but this is not documented anywhere that I have found. In any case, the
username should be the completed and fully-qualified username.
Many of the methods were poorly named:
- `set_qualified_matrix_user_id` is actually a userid formatter.
This has been replaced with `get_formatted_matrix_userid`.
- `set_matrix_home_server` is actually a hostname formatter.
This has been replaced with `get_formatted_matrix_home_server`.
- `add_user_matrix_id_to_moodle` sets the matrix userid for a moodle
user, it does not add more than one.
This has been replaced with `set_matrix_userid_in_moodle`.
The `set_qualified_matrix_user_id` method was silently returning with a
false value if the profile custom field did not exist, but the
`get_matrixid_from_moodle` method was creating the profile custom field
in the same situation. These have been swapped so a set operation will
create the field if it does not exist, but a get operation will not.
When using either of the CSV download links (spreadsheet format or Excel-
compatible format) use an Excel-compatible format for date/times.
Co-Authored-By: Ray Morris <Ray.Morris@teex.tamu.edu>
Declare qformat_xml::answerfiles and qformat_xml::feedbackfiles instead
of dynamically declaring answerfiles and feedbackfiles for the
question_answer instance when exporting questions and answers to XML
format.
The question answers for question type plugins extending
\qtype_calculated now have the type
\qtype_calculated\qtype_calculated_answer. So the answers for test
helper functions make_calculatedmulti_question_singleresponse() and
make_calculatedmulti_question_multiresponse() should also be changed
accordingly.
The question answers for question type plugins extending
\qtype_calculated now have the type
\qtype_calculated\qtype_calculated_answer. So the answers for
make_calculatedsimple_question_sum() should be changed accordingly.
* Question type plugins that extend qtype_calculated should be made
aware of the changes about the new question_answer type
\qtype_calculated\qtype_calculated_answer.
- The following behat step definitions were modified to work correctly both for course page conditions dialog and activity page
condition badges: 'activity_completion_condition_displayed_as', 'overridden_activity_completion_condition_displayed_as'
and 'activity_should_have_the_completion_condition'.
- Because now "Mark as done" manual completion button is not displayed for teachers in course homepage,
some behat steps were also modified.