<?php /** * Smarty shared plugin * * @package Smarty * @subpackage PluginsShared */ if (version_compare(PHP_VERSION, '5.2.3', '>=')) { /** * 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 = htmlspecialchars($string, ENT_COMPAT, Smarty::$_CHARSET, false); } 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 = htmlspecialchars($string); $string = str_replace(array('%%%SMARTY_START%%%', '%%%SMARTY_END%%%'), array('&', ';'), $string); } return $string; } } ?>