diff --git a/admin/pagelib.php b/admin/pagelib.php index 1dee158..d22638c 100644 --- a/admin/pagelib.php +++ b/admin/pagelib.php @@ -73,7 +73,9 @@ class page_admin extends page_base { $root =& $adminroot->locate($this->section); if (is_a($root, 'admin_externalpage')) { - return $root->url; + $url = new moodle_url($root->url,$this->extraurlparams); + $this->extraurlparams = $url->params; + return $url->out(true); } else { return ($CFG->wwwroot . '/' . $CFG->admin . '/settings.php'); } @@ -134,6 +136,7 @@ class page_admin extends page_base { // The search page currently doesn't handle block editing if ($this->section != 'search' and $this->user_allowed_editing()) { + $path = $this->url_get_path(); $options = $this->url_get_parameters(); if ($this->user_is_editing()) { $caption = get_string('blockseditoff'); @@ -142,7 +145,7 @@ class page_admin extends page_base { $caption = get_string('blocksediton'); $options['adminedit'] = 'on'; } - $buttons = print_single_button($this->url_get_path(), $options, $caption, 'get', '', true); + $buttons = print_single_button($path, $options, $caption, 'get', '', true); } else { $buttons = ' '; }