From deb2e286301f0b0472cd9d742fd4d0777035d5d4 Mon Sep 17 00:00:00 2001 From: ewinslow Date: Sat, 20 Nov 2010 09:49:45 +0000 Subject: Fixes #2237: Added 'reason' parameter to forward() to allow proper headers and more flexible destinations via plugin hooks. Also made use of this in core gatekeeper functions and in pagehandler.php git-svn-id: http://code.elgg.org/elgg/trunk@7373 36083f99-b078-4883-b0ff-0f9b5a30f544 --- engine/lib/elgglib.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'engine/lib/elgglib.php') diff --git a/engine/lib/elgglib.php b/engine/lib/elgglib.php index fb7a4578b..3e09c118a 100644 --- a/engine/lib/elgglib.php +++ b/engine/lib/elgglib.php @@ -68,10 +68,11 @@ function elgg_register_class($class, $location) { * already been sent, returns FALSE. * * @param string $location URL to forward to browser to. Can be path relative to the network's URL. + * @param string $reason Short explanation for why we're forwarding * * @return False False if headers have been sent. Terminates execution if forwarding. */ -function forward($location = "") { +function forward($location = "", $reason = 'system') { global $CONFIG; if (!headers_sent()) { @@ -84,7 +85,7 @@ function forward($location = "") { // return new forward location or false to stop the forward or empty string to exit $current_page = current_page_url(); $params = array('current_url' => $current_page, 'forward_url' => $location); - $location = elgg_trigger_plugin_hook('forward', 'system', $params, $location); + $location = elgg_trigger_plugin_hook('forward', $reason, $params, $location); if ($location) { header("Location: {$location}"); -- cgit v1.2.3