From: cash Date: Sun, 19 Jun 2011 19:03:30 +0000 (-0400) Subject: added another way for an action to be detected as an Ajax action: set the request... X-Git-Url: https://gitweb.fluxo.info/?a=commitdiff_plain;h=6e05a5d7486ede1c8408144b823b895c6282f270;p=lorea%2Felgg.git added another way for an action to be detected as an Ajax action: set the request variable X-Requested-With = XMLHttpRequest. This is because files cannot be uploaded with XMLHttpRequest --- diff --git a/engine/lib/actions.php b/engine/lib/actions.php index ff598916f..017653aa8 100644 --- a/engine/lib/actions.php +++ b/engine/lib/actions.php @@ -384,7 +384,8 @@ function actions_init() { */ function elgg_is_xhr() { return isset($_SERVER['HTTP_X_REQUESTED_WITH']) - && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'; + && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest' || + get_input('X-Requested-With') === 'XMLHttpRequest'; } /** @@ -448,6 +449,9 @@ function ajax_forward_hook($hook, $type, $reason, $params) { header("Content-type: application/json"); echo json_encode($params); exit; + } else { + echo json_encode('not ajax'); + exit; } }