From c381ad2002546042de5a71dedbea1a7d45d1e2d8 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Tue, 21 Oct 2014 22:17:24 -0500 Subject: [ticket/13192] Use get_valid_user_page method in build_url function PHPBB3-13192 --- phpBB/includes/functions.php | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) (limited to 'phpBB/includes/functions.php') diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index 7700dcfd27..d1d0f8f681 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -2396,26 +2396,7 @@ function build_url($strip_vars = false) { global $config, $user, $phpbb_path_helper; - $php_ext = $phpbb_path_helper->get_php_ext(); - $page = $user->page['page']; - - // We need to be cautious here. - // On some situations, the redirect path is an absolute URL, sometimes a relative path - // For a relative path, let's prefix it with $phpbb_root_path to point to the correct location, - // else we use the URL directly. - $url_parts = parse_url($page); - - // URL - if ($url_parts === false || empty($url_parts['scheme']) || empty($url_parts['host'])) - { - // Remove 'app.php/' from the page, when rewrite is enabled - if ($config['enable_mod_rewrite'] && strpos($page, 'app.' . $php_ext . '/') === 0) - { - $page = substr($page, strlen('app.' . $php_ext . '/')); - } - - $page = $phpbb_path_helper->get_phpbb_root_path() . $page; - } + $page = $phpbb_path_helper->get_valid_user_page($user->page['page'], $config['enable_mod_rewrite']); // Append SID $redirect = append_sid($page, false, false); -- cgit v1.2.1 From ce8c09f51f47b5e6806d51da643fba82d2341372 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Tue, 21 Oct 2014 22:17:48 -0500 Subject: [ticket/13192] Use get_valid_user_page in confirm_box() and cleanup globals The $request global existed twice and the $phpEx global is not being used in confirm_box(). PHPBB3-13192 --- phpBB/includes/functions.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'phpBB/includes/functions.php') diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index d1d0f8f681..d11aadacfa 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -2638,7 +2638,7 @@ function check_form_key($form_name, $timespan = false) function confirm_box($check, $title = '', $hidden = '', $html_body = 'confirm_body.html', $u_action = '') { global $user, $template, $db, $request; - global $phpEx, $phpbb_root_path, $request; + global $phpbb_path_helper, $phpbb_root_path; if (isset($_POST['cancel'])) { @@ -2700,8 +2700,8 @@ function confirm_box($check, $title = '', $hidden = '', $html_body = 'confirm_bo } // re-add sid / transform & to & for user->page (user->page is always using &) - $use_page = ($u_action) ? $phpbb_root_path . $u_action : $phpbb_root_path . str_replace('&', '&', $user->page['page']); - $u_action = reapply_sid($use_page); + $use_page = ($u_action) ? $u_action : str_replace('&', '&', $user->page['page']); + $u_action = reapply_sid($phpbb_path_helper->get_valid_user_page($use_page)); $u_action .= ((strpos($u_action, '?') === false) ? '?' : '&') . 'confirm_key=' . $confirm_key; $template->assign_vars(array( -- cgit v1.2.1 From a623868f20574e19d6840af11bce8836ad436e95 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Tue, 21 Oct 2014 22:38:03 -0500 Subject: [ticket/13192] Pass correct parameters and rename method to get_valid_page PHPBB3-13192 --- phpBB/includes/functions.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'phpBB/includes/functions.php') diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index d11aadacfa..169c741ecf 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -2396,7 +2396,7 @@ function build_url($strip_vars = false) { global $config, $user, $phpbb_path_helper; - $page = $phpbb_path_helper->get_valid_user_page($user->page['page'], $config['enable_mod_rewrite']); + $page = $phpbb_path_helper->get_valid_page($user->page['page'], $config['enable_mod_rewrite']); // Append SID $redirect = append_sid($page, false, false); @@ -2638,7 +2638,7 @@ function check_form_key($form_name, $timespan = false) function confirm_box($check, $title = '', $hidden = '', $html_body = 'confirm_body.html', $u_action = '') { global $user, $template, $db, $request; - global $phpbb_path_helper, $phpbb_root_path; + global $config, $phpbb_path_helper; if (isset($_POST['cancel'])) { @@ -2701,7 +2701,7 @@ function confirm_box($check, $title = '', $hidden = '', $html_body = 'confirm_bo // re-add sid / transform & to & for user->page (user->page is always using &) $use_page = ($u_action) ? $u_action : str_replace('&', '&', $user->page['page']); - $u_action = reapply_sid($phpbb_path_helper->get_valid_user_page($use_page)); + $u_action = reapply_sid($phpbb_path_helper->get_valid_page($use_page, $config['enable_mod_rewrite'])); $u_action .= ((strpos($u_action, '?') === false) ? '?' : '&') . 'confirm_key=' . $confirm_key; $template->assign_vars(array( -- cgit v1.2.1