summaryrefslogtreecommitdiff
path: root/app/Core/Translator.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Core/Translator.php')
-rw-r--r--app/Core/Translator.php26
1 files changed, 24 insertions, 2 deletions
diff --git a/app/Core/Translator.php b/app/Core/Translator.php
index 7cd3cc4f..43015e48 100644
--- a/app/Core/Translator.php
+++ b/app/Core/Translator.php
@@ -27,6 +27,26 @@ class Translator
private static $locales = array();
/**
+ * Flag to enable HTML escaping
+ *
+ * @static
+ * @access private
+ * @var boolean
+ */
+ private static $enable_escaping = true;
+
+ /**
+ * Disable HTML escaping for translations
+ *
+ * @static
+ * @access public
+ */
+ public static function disableEscaping()
+ {
+ self::$enable_escaping = false;
+ }
+
+ /**
* Get a translation
*
* $translator->translate('I have %d kids', 5);
@@ -42,8 +62,10 @@ class Translator
array_shift($args);
array_unshift($args, $this->get($identifier, $identifier));
- foreach ($args as &$arg) {
- $arg = htmlspecialchars($arg, ENT_QUOTES, 'UTF-8', false);
+ if (self::$enable_escaping) {
+ foreach ($args as &$arg) {
+ $arg = htmlspecialchars($arg, ENT_QUOTES, 'UTF-8', false);
+ }
}
return call_user_func_array(