Code

Readded smarty
[gosa.git] / gosa-core / include / smarty / plugins / modifiercompiler.from_charset.php
diff --git a/gosa-core/include/smarty/plugins/modifiercompiler.from_charset.php b/gosa-core/include/smarty/plugins/modifiercompiler.from_charset.php
new file mode 100644 (file)
index 0000000..1561fbc
--- /dev/null
@@ -0,0 +1,34 @@
+<?php\r
+/**\r
+ * Smarty plugin\r
+ *\r
+ * @package Smarty\r
+ * @subpackage PluginsModifierCompiler\r
+ */\r
+\r
+/**\r
+ * Smarty from_charset modifier plugin\r
+ *\r
+ * Type:     modifier<br>\r
+ * Name:     from_charset<br>\r
+ * Purpose:  convert character encoding from $charset to internal encoding\r
+ *\r
+ * @author Rodney Rehm\r
+ * @param array $params parameters\r
+ * @return string with compiled code\r
+ */\r
+function smarty_modifiercompiler_from_charset($params, $compiler)\r
+{\r
+    if (!SMARTY_MBSTRING /* ^phpunit */&&empty($_SERVER['SMARTY_PHPUNIT_DISABLE_MBSTRING'])/* phpunit$ */) {\r
+        // FIXME: (rodneyrehm) shouldn't this throw an error?\r
+        return $params[0];\r
+    }\r
+\r
+    if (!isset($params[1])) {\r
+        $params[1] = '"ISO-8859-1"';\r
+    }\r
+\r
+    return 'mb_convert_encoding(' . $params[0] . ', SMARTY_RESOURCE_CHAR_SET, ' . $params[1] . ')';\r
+}\r
+\r
+?>
\ No newline at end of file