diff --git a/public/mod/quiz/classes/output/edit_nav_actions.php b/public/mod/quiz/classes/output/edit_nav_actions.php index 37ebd154fe9..abd97d1809f 100644 --- a/public/mod/quiz/classes/output/edit_nav_actions.php +++ b/public/mod/quiz/classes/output/edit_nav_actions.php @@ -20,7 +20,7 @@ use moodle_url; use renderable; use renderer_base; use templatable; -use url_select; +use core\output\select_menu; /** * Represents the tertiary navigation around the quiz edit pages. @@ -64,15 +64,18 @@ class edit_nav_actions implements renderable, templatable { $gradeitemsetupurl->out(false) => get_string('gradeitemsetup', 'quiz'), ]; - $overridesnav = new url_select( + $overridesnav = new select_menu( + 'quizsetupnavigation', $menu, $this->whichpage === self::SUMMARY ? $questionsurl->out(false) : $gradeitemsetupurl->out(false), - null ); - $overridesnav->set_label(get_string('quizsetupnavigation', 'quiz'), ['class' => 'visually-hidden']); + $overridesnav->set_label( + get_string('quizsetupnavigation', 'quiz'), + ['class' => 'visually-hidden'] + ); return [ - 'navmenu' => $overridesnav->export_for_template($output), + 'navigation' => $overridesnav->export_for_template($output), ]; } } diff --git a/public/mod/quiz/classes/output/overrides_actions.php b/public/mod/quiz/classes/output/overrides_actions.php index d182503df5a..ebcb600e420 100644 --- a/public/mod/quiz/classes/output/overrides_actions.php +++ b/public/mod/quiz/classes/output/overrides_actions.php @@ -20,7 +20,7 @@ use moodle_url; use renderable; use renderer_base; use templatable; -use url_select; +use core\output\select_menu; /** * Render overrides action in the quiz secondary navigation @@ -98,8 +98,17 @@ class overrides_actions implements renderable, templatable { $groupoverridesurl->out(false) => get_string('groupoverrides', 'quiz') ]; - $overridesnav = new url_select($menu, $PAGE->url->out(false), null, 'quizoverrides'); - $templatecontext['overridesnav'] = $overridesnav->export_for_template($output); + $overridesnav = new select_menu( + 'quizoverrides', + $menu, + $PAGE->url->out(false), + ); + $overridesnav->set_label( + get_string('overrides', 'quiz'), + ['class' => 'visually-hidden'] + ); + + $templatecontext['navigation'] = $overridesnav->export_for_template($output); // Build the add button - but only if the user can edit. if ($this->canedit) { diff --git a/public/mod/quiz/templates/overrides_actions.mustache b/public/mod/quiz/templates/overrides_actions.mustache index e44c1b21aaa..3e693bc92c0 100644 --- a/public/mod/quiz/templates/overrides_actions.mustache +++ b/public/mod/quiz/templates/overrides_actions.mustache @@ -25,28 +25,30 @@ * none Context variables required for this template: - * overridesnav - must alwasy be present. + * navigation - must always be present. * addoverridebutton - should only be present if the user has permission to add a new override. Example context (json): { - "overridesnav": { - "id": "url_select_test", - "action": "https://example.com/post", - "formid": "url_select_form", - "sesskey": "sesskey", - "label": "core/url_select", - "options": [{ + "navigation": { + "name": "tertiarynavigation", + "value": "/mod/quiz/overrides.php?cmid=71&mode=group", + "baseid": "select-menu56789", + "selectedoption": "Group overrides", + "options": [ + { "name": "User overrides", - "value": "/mod/quiz/overrides.php?cmid=71&mode=user" + "value": "/mod/quiz/overrides.php?cmid=71&mode=user", + "id": "select-menu-option1", + "selected": false }, { "name": "Group overrides", - "value": "/mod/quiz/overrides.php?cmid=71&mode=group" + "value": "/mod/quiz/overrides.php?cmid=71&mode=group", + "id": "select-menu-option2", + "selected": true } - ], - "disabled": false, - "title": "Some cool title" + ] }, "addoverridebutton": { "id": "single_button1234", @@ -71,11 +73,11 @@ }}