From 56849c658b023ba8143c60435ddec2ee225fc11d Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Thu, 06 Jan 2011 06:48:11 -0500 Subject: [PATCH] Wrap HTML parts with <html><body> and add Doctype declaration (#1487098) --- CHANGELOG | 1 + program/steps/mail/sendmail.inc | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 652ac2b..e9af278 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Wrap HTML parts with <html><body> and add Doctype declaration (#1487098) - Make rcube_autoload silently skip unknown classes (#1487109) - Fix charset detection in vcards with encoded values (#1485542) - Better CSS cursors for splitters (#1486874) diff --git a/program/steps/mail/sendmail.inc b/program/steps/mail/sendmail.inc index 09f12ed..770660c 100644 --- a/program/steps/mail/sendmail.inc +++ b/program/steps/mail/sendmail.inc @@ -166,7 +166,7 @@ $name = trim($name); if ($name && ($name[0] != '"' || $name[strlen($name)-1] != '"') && preg_match('/[\(\)\<\>\\\.\[\]@,;:"]/', $name)) { - $name = '"'.addcslashes($name, '"').'"'; + $name = '"'.addcslashes($name, '"').'"'; } $address = idn_to_ascii($address); if (!preg_match('/^<\S+@\S+>$/', $address)) @@ -399,7 +399,11 @@ // add inline css for blockquotes $bstyle = 'padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px; width:100%'; $message_body = preg_replace('/<blockquote>/', - '<blockquote type="cite" style="'.$bstyle.'">', $message_body); + '<blockquote type="cite" style="'.$bstyle.'">', $message_body); + + // append doctype and html/body wrappers + $message_body = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">' . + "\r\n<html><body>\r\n" . $message_body; } // generic footer for all messages @@ -415,6 +419,8 @@ } if ($footer) $message_body .= "\r\n" . $footer; + if ($isHtml) + $message_body .= "\r\n</body></html>\r\n"; } // set line length for body wrapping -- Gitblit v1.9.1