diff --git a/application/displayblock.class.inc.php b/application/displayblock.class.inc.php index 2ae59862f..2a2dcb3a8 100644 --- a/application/displayblock.class.inc.php +++ b/application/displayblock.class.inc.php @@ -1172,16 +1172,21 @@ EOF } if (($bAutoReload) && ($this->m_sStyle != 'search')) // Search form do NOT auto-reload { - $sFilter = addslashes(str_replace('"', "'", $this->m_oFilter->serialize())); // Used either for asynchronous or auto_reload - $sExtraParams = addslashes(str_replace('"', "'", json_encode($aExtraParams))); // JSON encode, change the style of the quotes and escape them + // Used either for asynchronous or auto_reload + $sFilter = addslashes(str_replace("'", "\'", $this->m_oFilter->serialize())); + $sExtraParams = addslashes(str_replace("'", "\'", json_encode($aExtraParams))); - $oPage->add_script('if (typeof window.oAutoReloadBlock == "undefined") { - window.oAutoReloadBlock = {}; - } - if (typeof window.oAutoReloadBlock[\''.$sId.'\'] != "undefined") { - clearInterval(window.oAutoReloadBlock[\''.$sId.'\']); - } - window.oAutoReloadBlock[\''.$sId.'\'] = setInterval("ReloadBlock(\''.$sId.'\', \''.$this->m_sStyle.'\', \"'.$sFilter.'\", \"'.$sExtraParams.'\")", '.$iReloadInterval.');'); + $oPage->add_script( + <<m_sStyle}', '$sFilter', '$sExtraParams')", '$iReloadInterval'); +JS + ); } return $sHtml; diff --git a/js/utils.js b/js/utils.js index 740443e19..be52a81d2 100644 --- a/js/utils.js +++ b/js/utils.js @@ -199,7 +199,7 @@ function ReloadBlock(divId, sStyle, sSerializedFilter, sExtraParams) { $('#'+divId).block(); $.post(GetAbsoluteUrlAppRoot()+'pages/ajax.render.php?style='+sStyle, - {operation: 'ajax', filter: sSerializedFilter, extra_params: sExtraParams}, + {operation: 'ajax', filter: sSerializedFilter, encoding: 'serialize', extra_params: sExtraParams}, function (data) { $('#'+divId).empty(); $('#'+divId).append(data);