-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
5.1
-
MOODLE_501_STABLE
-
MDL-85533-main-v02
-
-
-
5
-
C->HQ 2025 Sprint I2.2 Moppies
This is the foundation issue for the new activity chooser design.
The new activity chooser will add many new features to the current modal, such as: purpose categorisation, a new search UX, filtering, setup difficulty level, and an extra information panel about the plugins.
Following a preliminary analysis of the existing activity chooser, it is clear that numerous unplanned additions have led to significant technical debt, compromising future maintainability. The prototype's design forces us to eliminate redundancies and reorganise misplaced code before integrating all the new features.
This issue includes:
- Deprecate the "activitychoosertabmode" setting. The Categories will be fixed to "all, favourites, recommended, activities and resources". This is important to reduce technical debt because this setting is generating many code redundancies right now. The activities/resources categories will be replaced in the next epic issue (MDL-85654) with the final purpose one.
- Move all the logic related to the webservice processing to the
core_course/local/activitychooser/repository module. Currently, some logic is embedded in the main core_course/activitychooser module.
- Remove redundancies in the templates. The navigation tabs and their content are hard-coded and duplicated several times. Now, the number of filters will increase from 5 to 8, and replicating HTML is no longer an option.
- Move and refactor all logic to generate the templates' data to a new core_course/local/activity chooser/exporter module. Currently, this logic is unnecessarily complex and is embedded in the main core_course/activity chooser module.
- Move all the activity chooser DOM manipulation to a new core_course/local/activity chooser/dialoguedom module. Right now, the DOM manipulation is embedded with the dialogue logic, which makes any UI change more complicated than it should.
- Move the search results inside the "all" tabs. This is a requirement of the new layout and will alter the current search logic.
- Change the modal layout to accommodate a longer list of filters by using a grid layout like the prototype. It is important to note that the goal of this point is not to match the prototype styling (this will be done in another issue), and it will focus on the general grid layout.
- Fix, clean and create behat scenarios related to the activity chooser filtering.
After the patch, the activity chooser will look somewhat like this:
- blocks
-
MDL-80295 Modify the activity chooser to use section ID instead of section number
-
- Open
-
-
MDL-85593 Update the activity chooser templates to match the prototype
-
- Open
-
-
MDL-85595 Adapt activity chooser tabs to mobile view
-
- Open
-
-
MDL-85597 Change the way an activity is selected in the activity chooser
-
- Open
-
-
MDL-85598 Add related activities to the activity chooser categories
-
- Open
-
-
MDL-85599 Move the activity chooser back button to the modal header
-
- Open
-
-
MDL-85601 Add difficulty level to activities and show it in the activity chooser details
-
- Open
-
-
MDL-85651 Add a details panel to the activity chooser information
-
- Open
-
-
MDL-85655 Remove activitychoosertabmode setting
-
- Open
-
-
MDL-85654 Replace the activity chooser categories with purpose categories
-
- Development in progress
-
- has a non-specific relationship to
-
MDL-83511 Activities added in wrong section
-
- Development in progress
-
- is duplicated by
-
MDL-85531 Activity chooser: add activity purpose filters and clean up code redundancies
-
- Closed
-
-
MDL-85532 Activity chooser: add activity purpose filters and clean up code redundancies
-
- Closed
-