mirror of
https://github.com/smarty-php/smarty.git
synced 2025-08-05 10:54:27 +02:00
- improvement remove double funtion declaration in plugin shared.escape_special_cars.php https://github.com/smarty-php/smarty/issues/229
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
23.07.2016
|
23.07.2016
|
||||||
- bugfix setTemplateDir('/') and setTemplateDir('') did create wrong absolute filepath https://github.com/smarty-php/smarty/issues/245
|
- bugfix setTemplateDir('/') and setTemplateDir('') did create wrong absolute filepath https://github.com/smarty-php/smarty/issues/245
|
||||||
- optimization of filepath normalization
|
- optimization of filepath normalization
|
||||||
|
- improvement remove double funtion declaration in plugin shared.escape_special_cars.php https://github.com/smarty-php/smarty/issues/229
|
||||||
|
|
||||||
19.07.2016
|
19.07.2016
|
||||||
- bugfix multiple {include} with relative filepath within {block}{/block} could fail https://github.com/smarty-php/smarty/issues/246
|
- bugfix multiple {include} with relative filepath within {block}{/block} could fail https://github.com/smarty-php/smarty/issues/246
|
||||||
|
@@ -6,48 +6,29 @@
|
|||||||
* @subpackage PluginsShared
|
* @subpackage PluginsShared
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (version_compare(PHP_VERSION, '5.2.3', '>=')) {
|
/**
|
||||||
/**
|
* escape_special_chars common function
|
||||||
* escape_special_chars common function
|
* Function: smarty_function_escape_special_chars<br>
|
||||||
* Function: smarty_function_escape_special_chars<br>
|
* Purpose: used by other smarty functions to escape
|
||||||
* Purpose: used by other smarty functions to escape
|
* special chars except for already escaped ones
|
||||||
* special chars except for already escaped ones
|
*
|
||||||
*
|
* @author Monte Ohrt <monte at ohrt dot com>
|
||||||
* @author Monte Ohrt <monte at ohrt dot com>
|
*
|
||||||
*
|
* @param string $string text that should by escaped
|
||||||
* @param string $string text that should by escaped
|
*
|
||||||
*
|
* @return string
|
||||||
* @return string
|
*/
|
||||||
*/
|
function smarty_function_escape_special_chars($string)
|
||||||
function smarty_function_escape_special_chars($string)
|
{
|
||||||
{
|
if (!is_array($string)) {
|
||||||
if (!is_array($string)) {
|
if (version_compare(PHP_VERSION, '5.2.3', '>=')) {
|
||||||
$string = htmlspecialchars($string, ENT_COMPAT, Smarty::$_CHARSET, false);
|
$string = htmlspecialchars($string, ENT_COMPAT, Smarty::$_CHARSET, false);
|
||||||
}
|
} else {
|
||||||
|
|
||||||
return $string;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
/**
|
|
||||||
* escape_special_chars common function
|
|
||||||
* Function: smarty_function_escape_special_chars<br>
|
|
||||||
* Purpose: used by other smarty functions to escape
|
|
||||||
* special chars except for already escaped ones
|
|
||||||
*
|
|
||||||
* @author Monte Ohrt <monte at ohrt dot com>
|
|
||||||
*
|
|
||||||
* @param string $string text that should by escaped
|
|
||||||
*
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
function smarty_function_escape_special_chars($string)
|
|
||||||
{
|
|
||||||
if (!is_array($string)) {
|
|
||||||
$string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%', $string);
|
$string = preg_replace('!&(#?\w+);!', '%%%SMARTY_START%%%\\1%%%SMARTY_END%%%', $string);
|
||||||
$string = htmlspecialchars($string);
|
$string = htmlspecialchars($string);
|
||||||
$string = str_replace(array('%%%SMARTY_START%%%', '%%%SMARTY_END%%%'), array('&', ';'), $string);
|
$string = str_replace(array('%%%SMARTY_START%%%', '%%%SMARTY_END%%%'), array('&', ';'), $string);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $string;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return $string;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user