Instead of using set_coursemodule_name() to proceed with the name
change we perform the change earlier in the process, both to avoid
duplicate events caused by the renaming function and also to get the new
name used by all proper generated events.
The tests make sure that both existing users as well as signing up users
can accept policies with "on their own page" style of agreement prior
reaching the consent page.
The idea of the patch is to check the list of policies that are shown
before and on the consent page. If that list contains a policy that is
supposed to be accepted on its own page, the existing flow is
interrupted and the user is redirected to a view.php to display that
particular policy.
The view template for such a policy contains a button for getting the
user agreement. When pressed, the policy is marked as accepted and we
can go to start again.
To make this working during the signup, we need to extend the existing
logic and start tracking which particular policies the visitor accepted
prior reaching the signup form. Similarly, we need to start track which
particular policies were displayed and use that list when evaluating
which policies were unchecked on the consent page.
The patch introduces a new property of a policy document called
"Agreement style". It allows the admin to define if the policy should be
accepted together with all others on the consent page (legacy and
default behaviour) or on its page before the consent page is reached
(the new optional behaviour).
Without this, we have no coverage of the convert_submissions task. This test
validates it both works normally, and that it also skips queued items that have
exceeded the conversion attempt limit introduced in this improvement.
When clicking on an event in the month view, a modal opens with
information about it. That modal did previously only show the start time
of the event. It now also shows the end (if the event has one).
These styles cause the custom select fields to overlap their containers. See the license field in the file picker single file info dialogue for an example.
The search results page showed just the titles of the found matching
pages / sections but not their location within the admin tree. In
certain cases, we even have multiple admin pages with the same title -
making it impossible to distinguish which is which.
The patch makes it so that the path of the found admin page / section is
displayed below the title.