From 8bbede425193caa57be81638b8377c2c9a21e022 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Sat, 7 Dec 2013 13:23:57 +0100 Subject: [PATCH] [ticket/11997] Add method for controller redirect URLs to path helper This method will allow us to get proper redirect URLs for controllers. PHPBB3-11997 --- phpBB/phpbb/path_helper.php | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/phpBB/phpbb/path_helper.php b/phpBB/phpbb/path_helper.php index 71252ac05b..f6587fa101 100644 --- a/phpBB/phpbb/path_helper.php +++ b/phpBB/phpbb/path_helper.php @@ -183,4 +183,28 @@ class path_helper */ return $this->web_root_path = $this->phpbb_root_path . str_repeat('../', $corrections - 1); } + + /** + * Get the redirect URL for controllers + * + * @param string $url URL to the controller + * + * @param string Redirect URL for controller + */ + public function get_controller_redirect_url($url) + { + // Remove predecing dots + $url = ltrim($this->remove_web_root_path($url), '.'); + + // Get position of URL delimiter + $delimiter_position = strpos($url, '/'); + + // Add URL delimiter in front of path if it doesn't exist + if ($delimiter_position === false || $delimiter_position > 1) + { + $url = '/' . $url; + } + + return generate_board_url() . $url; + } }