summaryrefslogtreecommitdiff
path: root/lib/smarty/plugins/modifiercompiler.unescape.php
diff options
context:
space:
mode:
authoremkael <emkael@tlen.pl>2018-10-18 02:39:34 +0200
committeremkael <emkael@tlen.pl>2018-10-18 02:39:42 +0200
commitab5d8d4e07bb3c8230d0285ef8902ef1979fce51 (patch)
tree0b955e585cb2fdbc7207392a5f2c97d610b6a5bc /lib/smarty/plugins/modifiercompiler.unescape.php
parentc055ce2ab60c6582bad3e5babcb1d00384fde78a (diff)
Updating Smarty
Diffstat (limited to 'lib/smarty/plugins/modifiercompiler.unescape.php')
-rw-r--r--lib/smarty/plugins/modifiercompiler.unescape.php92
1 files changed, 44 insertions, 48 deletions
diff --git a/lib/smarty/plugins/modifiercompiler.unescape.php b/lib/smarty/plugins/modifiercompiler.unescape.php
index ce0bd63..05beb81 100644
--- a/lib/smarty/plugins/modifiercompiler.unescape.php
+++ b/lib/smarty/plugins/modifiercompiler.unescape.php
@@ -1,48 +1,44 @@
-<?php
-/**
- * Smarty plugin
- *
- * @package Smarty
- * @subpackage PluginsModifierCompiler
- */
-
-/**
- * Smarty unescape modifier plugin
- *
- * Type: modifier<br>
- * Name: unescape<br>
- * Purpose: unescape html entities
- *
- * @author Rodney Rehm
- * @param array $params parameters
- * @return string with compiled code
- */
-function smarty_modifiercompiler_unescape($params, $compiler)
-{
- if (!isset($params[1])) {
- $params[1] = 'html';
- }
- if (!isset($params[2])) {
- $params[2] = '\'' . addslashes(Smarty::$_CHARSET) . '\'';
- } else {
- $params[2] = "'" . $params[2] . "'";
- }
-
- switch (trim($params[1], '"\'')) {
- case 'entity':
- return 'mb_convert_encoding(' . $params[0] . ', ' . $params[2] . ', \'HTML-ENTITIES\')';
- case 'htmlall':
- if (Smarty::$_MBSTRING) {
- return 'mb_convert_encoding(' . $params[0] . ', ' . $params[2] . ', \'HTML-ENTITIES\')';
- }
- return 'html_entity_decode(' . $params[0] . ', ENT_QUOTES, ' . $params[2] . ')';
-
- case 'html':
- return 'htmlspecialchars_decode(' . $params[0] . ', ENT_QUOTES)';
-
- default:
- return $params[0];
- }
-}
-
-?> \ No newline at end of file
+<?php
+/**
+ * Smarty plugin
+ *
+ * @package Smarty
+ * @subpackage PluginsModifierCompiler
+ */
+/**
+ * Smarty unescape modifier plugin
+ * Type: modifier
+ * Name: unescape
+ * Purpose: unescape html entities
+ *
+ * @author Rodney Rehm
+ *
+ * @param array $params parameters
+ *
+ * @return string with compiled code
+ */
+function smarty_modifiercompiler_unescape($params)
+{
+ if (!isset($params[ 1 ])) {
+ $params[ 1 ] = 'html';
+ }
+ if (!isset($params[ 2 ])) {
+ $params[ 2 ] = '\'' . addslashes(Smarty::$_CHARSET) . '\'';
+ } else {
+ $params[ 2 ] = "'{$params[ 2 ]}'";
+ }
+ switch (trim($params[ 1 ], '"\'')) {
+ case 'entity':
+ case 'htmlall':
+ if (Smarty::$_MBSTRING) {
+ return 'mb_convert_encoding(' . $params[ 0 ] . ', ' . $params[ 2 ] . ', \'HTML-ENTITIES\')';
+ }
+ return 'html_entity_decode(' . $params[ 0 ] . ', ENT_NOQUOTES, ' . $params[ 2 ] . ')';
+ case 'html':
+ return 'htmlspecialchars_decode(' . $params[ 0 ] . ', ENT_QUOTES)';
+ case 'url':
+ return 'rawurldecode(' . $params[ 0 ] . ')';
+ default:
+ return $params[ 0 ];
+ }
+}