diff options
author | ctrlaltca <ctrlaltca@gmail.com> | 2014-01-15 09:16:22 -0800 |
---|---|---|
committer | ctrlaltca <ctrlaltca@gmail.com> | 2014-01-15 09:16:22 -0800 |
commit | 6132af7f7e528b42ec9aaceae710b6c4d3d4bdda (patch) | |
tree | a35bc379288e37e5296174edf194a7991243c882 /framework/Web | |
parent | 53ef46637f49ba745bb43c891cae593454502979 (diff) | |
parent | a1669b2a7f2f681b1484a9e329c54f2d070bb69c (diff) |
Merge pull request #495 from david0/master
Fix: do json_decode before decoding UTF8 to globalisations charset
Diffstat (limited to 'framework/Web')
-rw-r--r-- | framework/Web/UI/ActiveControls/TActivePageAdapter.php | 5 | ||||
-rw-r--r-- | framework/Web/UI/TPage.php | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/framework/Web/UI/ActiveControls/TActivePageAdapter.php b/framework/Web/UI/ActiveControls/TActivePageAdapter.php index 8fd39766..bce3beb0 100644 --- a/framework/Web/UI/ActiveControls/TActivePageAdapter.php +++ b/framework/Web/UI/ActiveControls/TActivePageAdapter.php @@ -294,7 +294,7 @@ class TActivePageAdapter extends TControlAdapter } /** - * Gets callback parameter. JSON encoding is assumed. + * Gets callback parameter. * @return string postback event parameter */ public function getCallbackEventParameter() @@ -302,8 +302,7 @@ class TActivePageAdapter extends TControlAdapter if($this->_callbackEventParameter===null) { $param = $this->getRequest()->itemAt(TPage::FIELD_CALLBACK_PARAMETER); - if(strlen($param) > 0) - $this->_callbackEventParameter=TJavaScript::jsonDecode((string)$param); + $this->_callbackEventParameter=$param; } return $this->_callbackEventParameter; } diff --git a/framework/Web/UI/TPage.php b/framework/Web/UI/TPage.php index 7f729543..2dc1cac3 100644 --- a/framework/Web/UI/TPage.php +++ b/framework/Web/UI/TPage.php @@ -302,6 +302,10 @@ class TPage extends TTemplateControl $this->setAdapter(new TActivePageAdapter($this)); + $callbackEventParameter = $this->getRequest()->itemAt(TPage::FIELD_CALLBACK_PARAMETER); + if(strlen($callbackEventParameter) > 0) + $this->_postData[TPage::FIELD_CALLBACK_PARAMETER]=TJavaScript::jsonDecode((string)$callbackEventParameter); + // Decode Callback postData from UTF-8 to current Charset if (($g=$this->getApplication()->getGlobalization(false))!==null && strtoupper($enc=$g->getCharset())!='UTF-8') |