32 lines
		
	
	
		
			774 B
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			774 B
		
	
	
	
		
			PHP
		
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * Smarty shared plugin
 | 
						|
 * @package Smarty
 | 
						|
 * @subpackage plugins
 | 
						|
 */
 | 
						|
 | 
						|
 | 
						|
/**
 | 
						|
 * 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
 | 
						|
 * @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;
 | 
						|
}
 | 
						|
 | 
						|
/* vim: set expandtab: */
 | 
						|
 | 
						|
?>
 |