| | |
| | | $MAIL_MIME->setTXTBody($plugin['body'], false, true); |
| | | } |
| | | |
| | | // chose transfer encoding |
| | | $charset_7bit = array('ASCII', 'ISO-2022-JP', 'ISO-8859-1', 'ISO-8859-2', 'ISO-8859-15'); |
| | | $transfer_encoding = in_array(strtoupper($message_charset), $charset_7bit) ? '7bit' : '8bit'; |
| | | |
| | | // add stored attachments, if any |
| | | if (is_array($_SESSION['compose']['attachments'])) |
| | | { |
| | |
| | | $ctype, |
| | | $attachment['name'], |
| | | ($attachment['data'] ? false : true), |
| | | ($ctype == 'message/rfc822' ? $transfer_encoding : 'base64'), |
| | | // @TODO: quoted-printable for message/rfc822 is safe, |
| | | // but we should check that 7bit or 8bit is possible here |
| | | ($ctype == 'message/rfc822' ? 'quoted-printable' : 'base64'), |
| | | ($ctype == 'message/rfc822' ? 'inline' : 'attachment'), |
| | | $message_charset, '', '', |
| | | $CONFIG['mime_param_folding'] ? 'quoted-printable' : NULL, |
| | |
| | | } |
| | | } |
| | | |
| | | // choose transfer encoding for plain/text body |
| | | if (preg_match('/[^\x00-\x7F]/', $MAIL_MIME->getTXTBody())) |
| | | $transfer_encoding = '8bit'; |
| | | else |
| | | $transfer_encoding = '7bit'; |
| | | |
| | | // encoding settings for mail composing |
| | | $MAIL_MIME->setParam('text_encoding', $transfer_encoding); |
| | | $MAIL_MIME->setParam('html_encoding', 'quoted-printable'); |