From ed510e64d9e2fb7aa0b0f73aaa0a9b1ef914e665 Mon Sep 17 00:00:00 2001 From: Sam Hemelryk Date: Thu, 29 Jul 2010 04:39:49 +0000 Subject: [PATCH] navigation MDL-23551 Fixed broken password change link, thanks Jay for the patch --- lib/navigationlib.php | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/lib/navigationlib.php b/lib/navigationlib.php index 54111b80489..4f9b9022f60 100644 --- a/lib/navigationlib.php +++ b/lib/navigationlib.php @@ -3101,23 +3101,9 @@ class settings_navigation extends navigation_node { $userauth = get_auth_plugin($user->auth); if ($currentuser && !session_is_loggedinas() && $userauth->can_change_password() && !isguestuser() && has_capability('moodle/user:changeownpassword', $systemcontext)) { $passwordchangeurl = $userauth->change_password_url(); - if (!$passwordchangeurl) { - if (empty($CFG->loginhttps)) { - $wwwroot = $CFG->wwwroot; - } else { - $wwwroot = str_replace('http:', 'https:', $CFG->wwwroot); - } - $passwordchangeurl = new moodle_url('/login/change_password.php'); - } else { - $urlbits = explode($passwordchangeurl. '?', 1); - $passwordchangeurl = new moodle_url($urlbits[0]); - if (count($urlbits)==2 && preg_match_all('#\&([^\=]*?)\=([^\&]*)#si', '&'.$urlbits[1], $matches)) { - foreach ($matches as $pair) { - $fullmeurl->param($pair[1],$pair[2]); - } - } + if (empty($passwordchangeurl)) { + $passwordchangeurl = new moodle_url('/login/change_password.php', array('id', $course->id)); } - $passwordchangeurl->param('id', $course->id); $usersetting->add(get_string("changepassword"), $passwordchangeurl, self::TYPE_SETTING); } }