Change meta-charset specififcation in HTML to UTF-8; no need for mb_convert_encoding() anymore

release-0.6
thomascube 17 years ago
parent c3ab753765
commit 350459486d

@ -187,8 +187,6 @@ class washtml
//Charset seems to be ignored (probably if defined in the HTML document) //Charset seems to be ignored (probably if defined in the HTML document)
$node = new DOMDocument('1.0', $config['charset']); $node = new DOMDocument('1.0', $config['charset']);
$full = true; $full = true;
if (function_exists('mb_convert_encoding'))
$html = mb_convert_encoding($html, 'HTML-ENTITIES', $config['charset']);
@$node->loadHTML($html); @$node->loadHTML($html);
return self::dumpHtml($node, $config, $full); return self::dumpHtml($node, $config, $full);
} }

@ -534,12 +534,15 @@ function rcmail_print_body($part, $safe=false, $plain=false)
} }
// text/html // text/html
else if ($part->ctype_secondary == 'html') { else if ($part->ctype_secondary == 'html') {
// charset was converted to UTF-8 in rcube_imap::get_message_part() -> change charset specification in HTML accordingly
$html = preg_replace('/(\s+content=[\'"]\w+\/\w+;\s+charset)=([a-z0-9-]+)/i', '\\1='.RCMAIL_CHARSET, $part->body);
// clean HTML with washhtml by Frederic Motte // clean HTML with washhtml by Frederic Motte
$body = washtml::wash($part->body, array( $body = washtml::wash($html, array(
'show_washed' => false, 'show_washed' => false,
'allow_remote' => $safe, 'allow_remote' => $safe,
'blocked_src' => "./program/blocked.gif", 'blocked_src' => "./program/blocked.gif",
'charset' => 'UTF-8', 'charset' => RCMAIL_CHARSET,
'cid_map' => $part->replaces, 'cid_map' => $part->replaces,
), $full_inline); ), $full_inline);

Loading…
Cancel
Save