diff options
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/lib/actions.php | 25 | ||||
| -rw-r--r-- | engine/lib/input.php | 17 | 
2 files changed, 21 insertions, 21 deletions
diff --git a/engine/lib/actions.php b/engine/lib/actions.php index eafb42155..bd3bdb80a 100644 --- a/engine/lib/actions.php +++ b/engine/lib/actions.php @@ -21,6 +21,9 @@  function action($action, $forwarder = "") {  	global $CONFIG; +	// set GET params +	elgg_set_input_from_uri(); +  	// @todo REMOVE THESE EXCEPTIONS IN 1.8.  	// These are only to provide a way to disable plugins that overwrite core  	// UI without tokens.  (And for installation because of session_id problems) @@ -31,27 +34,7 @@ function action($action, $forwarder = "") {  	if (!in_array($action, $exceptions)) {  		// All actions require a token. -		if (!action_gatekeeper()) { -			$message = "ERROR: $action was called without an action token and has been ignored.  This is usually caused by outdated 3rd party plugins."; - -			error_log($message); -			register_error($message); -			forward(); -		} -	} - -	// if there are any query parameters, make them available from get_input -	if (strpos($_SERVER['REQUEST_URI'], '?') !== FALSE) { -		$query = substr($_SERVER['REQUEST_URI'], strpos($_SERVER['REQUEST_URI'], '?') + 1); -		if (isset($query)) { -			parse_str($query, $query_arr); -			if (is_array($query_arr)) { -				foreach($query_arr as $name => $val) { -					// should we trim name and val? -					set_input($name, $val); -				} -			} -		} +		action_gatekeeper();  	}  	$forwarder = str_replace($CONFIG->url, "", $forwarder); diff --git a/engine/lib/input.php b/engine/lib/input.php index f59061312..27204682f 100644 --- a/engine/lib/input.php +++ b/engine/lib/input.php @@ -167,6 +167,23 @@ function autop($pee, $br = 1) {  }  /** + * Examins $_SERVER['REQUEST_URI'] and set_input()s on each. + * Required if the params are sent as GET and not forwarded by mod_rewrite. + * + * @return bool on success + */ +function elgg_set_input_from_uri() { +	$query = parse_url($_SERVER['REQUEST_URI'], PHP_URL_QUERY); +	parse_str($query, $query_arr); + +	if (is_array($query_arr)) { +		foreach($query_arr as $name => $val) { +			set_input($name, $val); +		} +	} +} + +/**   * Page handler for autocomplete endpoint.   *   * @param $page  | 
