diff options
Diffstat (limited to 'include/smarty/libs/plugins/modifiercompiler.to_charset.php')
-rw-r--r-- | include/smarty/libs/plugins/modifiercompiler.to_charset.php | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/include/smarty/libs/plugins/modifiercompiler.to_charset.php b/include/smarty/libs/plugins/modifiercompiler.to_charset.php new file mode 100644 index 000000000..d6c0f296b --- /dev/null +++ b/include/smarty/libs/plugins/modifiercompiler.to_charset.php @@ -0,0 +1,34 @@ +<?php +/** + * Smarty plugin + * + * @package Smarty + * @subpackage PluginsModifierCompiler + */ + +/** + * Smarty to_charset modifier plugin + * + * Type: modifier<br> + * Name: to_charset<br> + * Purpose: convert character encoding from internal encoding to $charset + * + * @author Rodney Rehm + * @param array $params parameters + * @return string with compiled code + */ +function smarty_modifiercompiler_to_charset($params, $compiler) +{ + if (!Smarty::$_MBSTRING) { + // FIXME: (rodneyrehm) shouldn't this throw an error? + return $params[0]; + } + + if (!isset($params[1])) { + $params[1] = '"ISO-8859-1"'; + } + + return 'mb_convert_encoding(' . $params[0] . ', ' . $params[1] . ', "' . addslashes(Smarty::$_CHARSET) . '")'; +} + +?>
\ No newline at end of file |