diff --git a/classes/context/Context.class.php b/classes/context/Context.class.php index 8d7a53b9a..d8b923695 100644 --- a/classes/context/Context.class.php +++ b/classes/context/Context.class.php @@ -21,6 +21,11 @@ class Context { * @var string GET|POST|XMLRPC */ var $request_method = 'GET'; + /** + * js callback function name. + * @var string + */ + var $js_callback_func = ''; /** * Response method.If it's not set, it follows request method. * @var string HTML|XMLRPC @@ -823,12 +828,12 @@ class Context { function setRequestMethod($type='') { is_a($this,'Context')?$self=&$this:$self=&Context::getInstance(); - $xe_js_callback = isset($_GET['xe_js_callback']) ? $_GET['xe_js_callback'] : $_POST['xe_js_callback']; + $self->js_callback_func = isset($_GET['xe_js_callback']) ? $_GET['xe_js_callback'] : $_POST['xe_js_callback']; ($type && $self->request_method=$type) or (strpos($_SERVER['CONTENT_TYPE'],'json') && $self->request_method='JSON') or ($GLOBALS['HTTP_RAW_POST_DATA'] && $self->request_method='XMLRPC') or - ($xe_js_callback && $self->request_method='JS_CALLBACK') or + ($self->js_callback_func && $self->request_method='JS_CALLBACK') or ($self->request_method = $_SERVER['REQUEST_METHOD']); } @@ -1020,6 +1025,16 @@ class Context { return $url; } + /** + * Return js callback func. + * @return string callback func. + */ + function getJSCallbackFunc() + { + is_a($this,'Context')?$self=&$this:$self=&Context::getInstance(); + return $self->js_callback_func; + } + /** * Make URL with args_list upon request URL * diff --git a/classes/display/JSCallbackDisplayHandler.php b/classes/display/JSCallbackDisplayHandler.php index c07fe2c41..b89cabc7f 100644 --- a/classes/display/JSCallbackDisplayHandler.php +++ b/classes/display/JSCallbackDisplayHandler.php @@ -12,7 +12,7 @@ class JSCallbackDisplayHandler{ $variables['error'] = $oModule->getError(); $variables['message'] = $oModule->getMessage(); $json = str_replace(array("\r\n","\n","\t"),array('\n','\n','\t'),json_encode2($variables)); - $output = sprintf('', Context::get('xe_js_callback'), $json); + $output = sprintf('', Context::getJSCallbackFunc(), $json); return $output; } }