summaryrefslogtreecommitdiff
path: root/program/include/rcube_shared.inc
diff options
context:
space:
mode:
Diffstat (limited to 'program/include/rcube_shared.inc')
-rw-r--r--program/include/rcube_shared.inc8
1 files changed, 6 insertions, 2 deletions
diff --git a/program/include/rcube_shared.inc b/program/include/rcube_shared.inc
index edf19b66e..9b1b23bf6 100644
--- a/program/include/rcube_shared.inc
+++ b/program/include/rcube_shared.inc
@@ -1146,6 +1146,8 @@ EOF;
// perform utf-8 decoding
if ($utf8_decode && function_exists('utf8ToUnicodeEntities'))
$text = utf8ToUnicodeEntities($text);
+ else if ($utf8_decode)
+ $OUTPUT->set_charset('UTF-8');
// format output
@@ -1206,7 +1208,7 @@ function rep_specialchars_output($str, $enctype='', $mode='', $newlines=TRUE)
{
if (!$html_encode_arr)
{
- $html_encode_arr = get_html_translation_table(HTML_ENTITIES); // HTML_SPECIALCHARS
+ $html_encode_arr = get_html_translation_table(HTML_SPECIALCHARS); // HTML_ENTITIES
$html_encode_arr[chr(128)] = '€';
unset($html_encode_arr['?']);
unset($html_encode_arr['&']);
@@ -1238,10 +1240,12 @@ function rep_specialchars_output($str, $enctype='', $mode='', $newlines=TRUE)
// if the replace tables for RTF, XML and JS are not yet defined
if (!$js_rep_table)
{
+ $js_rep_table = $rtf_rep_table = $xml_rep_table = array();
+
for ($c=160; $c<256; $c++) // can be increased to support more charsets
{
$hex = dechex($c);
- $js_rep_table[Chr($c)] = sprintf("\u%s%s", str_repeat('0', 4-strlen($hex)), $hex);
+ //$js_rep_table[Chr($c)] = sprintf("\u%s%s", str_repeat('0', 4-strlen($hex)), $hex);
$rtf_rep_table[Chr($c)] = "\\'$hex";
$xml_rep_table[Chr($c)] = "&#$c;";
}