Workaround TinyMCE issue with <p> </p> sequence (#1490463)
| | |
| | | if ($bodyIsHtml) { |
| | | $body = rcmail_wash_html($body, array('safe' => 1), $cid_map); |
| | | |
| | | // cleanup |
| | | $body = preg_replace(array( |
| | | // remove comments (produced by washtml) |
| | | $body = preg_replace('/<!--[^>]+-->/', '', $body); |
| | | '/<!--[^>]+-->/', |
| | | // remove <body> tags |
| | | '/<body([^>]*)>/i', |
| | | '/<\/body>/i', |
| | | // convert TinyMCE's empty-line sequence (#1490463) |
| | | '/<p>\xC2\xA0<\/p>/', |
| | | ), |
| | | array( |
| | | '', |
| | | '', |
| | | '', |
| | | '<p><br /></p>', |
| | | ), |
| | | $body |
| | | ); |
| | | |
| | | // replace cid with href in inline images links |
| | | if (!empty($cid_map)) { |
| | |
| | | |
| | | $message_body = preg_replace( |
| | | array( |
| | | // remove empty signature div |
| | | '/<div id="_rc_sig">( )?<\/div>[\s\r\n]*$/', |
| | | // remove signature's div ID |
| | | '/\s*id="_rc_sig"/', |
| | | // add inline css for blockquotes and container |
| | | '/<blockquote>/', |
| | | '/<div class="pre">/' |
| | | '/<div class="pre">/', |
| | | // convert TinyMCE's new-line sequences (#1490463) |
| | | '/<p> <\/p>/', |
| | | ), |
| | | array( |
| | | '', |
| | | '', |
| | | '<blockquote type="cite" style="'.$b_style.'">', |
| | | '<div class="pre" style="'.$pre_style.'">' |
| | | '<div class="pre" style="'.$pre_style.'">', |
| | | '<p><br /></p>', |
| | | ), |
| | | $message_body); |
| | | } |