MDL-73532 navigation: Modify methods that extend the setting nav

Introduces some changes to the exising _extend_settings_navigation()
methods that utilize the global $PAGE object. In order to accomodate
the changes done for the secondary navigation for single activity
courses, the methods that extend the settings navigation can no longer
rely on the $PAGE object, instead the more reliabe way to obtain this
infomation is through the get_page() method from settings_navigation
class.
This commit is contained in:
Mihail Geshoski 2022-01-19 16:06:46 +08:00
parent bf27303955
commit 4a9c83ac9e
19 changed files with 132 additions and 145 deletions

View file

@ -862,11 +862,9 @@ function choice_supports($feature) {
* @param navigation_node $choicenode The node to add module settings to
*/
function choice_extend_settings_navigation(settings_navigation $settings, navigation_node $choicenode) {
global $PAGE;
if (has_capability('mod/choice:readresponses', $PAGE->cm->context)) {
if (has_capability('mod/choice:readresponses', $settings->get_page()->cm->context)) {
$choicenode->add(get_string('responses', 'choice'),
new moodle_url('/mod/choice/report.php', array('id' => $PAGE->cm->id)));
new moodle_url('/mod/choice/report.php', array('id' => $settings->get_page()->cm->id)));
}
}