-
Sub-task
-
Resolution: Fixed
-
Minor
-
3.7
-
MOODLE_37_STABLE
-
MOODLE_38_STABLE
-
MDL-66016-master -
As a subtask of MDL-64999, this issue is about implementing the following improvement:
- Add "All" course filter option which lets user show really all courses including hidden courses.
- This filter option is added for the sake of completeness.
- It amends the list of classification parameters of the webservice "get_enrolled_courses_by_timeline_classification"
- To align the language strings of the new filter option with the webservice implementation and to prevent having to change the existing webservice interface, string identifiers will be moved around in the language pack and in AMOS.
- As soon as the filter options are configurable (see next bullet item), this new filter option is disabled by default and can be enabled by the admin if needed.
- This change could have been capsuled into a dedicated tracker issue, but it makes more sense to implement it on-the-fly here.
- Add settings to /admin/settings.php?section=blocksettingmyoverview:
- One admin setting per course filter option is introduced which lets the admin enable / disable the course filter options individually. This is built as individual checkbox settings and not as a multiselect setting because a multiselect setting takes more time to separate and process when building the course filter in the block view. Additionally, individual checkbox settings can then be used together with the admin setting hide_if functionality later in
MDL-66017. - The set of course filter options which is enabled by default is chosen to keep the current status quo:
- All - disabled by default
- All (except hidden) - enabled by default
- In progress - enabled by default
- Future - enabled by default
- Past - enabled by default
- Starred - enabled by default
- Hidden - enabled by default
- If the admin disables one up to n-1 of these filter options, the filter option is applied transparently but the course filter dropdown is not shown in the course filter anymore.
- If the admin disables all of these filter options (for whatever reason), the course filter dropdown isn't shown anymore and the list is always shown in "All (including hidden)" mode.
- One admin setting per course filter option is introduced which lets the admin enable / disable the course filter options individually. This is built as individual checkbox settings and not as a multiselect setting because a multiselect setting takes more time to separate and process when building the course filter in the block view. Additionally, individual checkbox settings can then be used together with the admin setting hide_if functionality later in
- Add a heading to the pre-existing settings on /admin/settings.php?section=blocksettingmyoverview to cluster the settings.
- All functional additions are covered with Behat tests