From: Florent Bruneau Date: Sun, 28 Sep 2008 15:36:27 +0000 (+0200) Subject: Fix quoted-printable encoding of the subject. X-Git-Tag: core/1.0.0~20 X-Git-Url: http://git.polytechnique.org/?a=commitdiff_plain;ds=sidebyside;h=5ec9aef340bb31adb4f70f8a791623893b6f23a6;p=platal.git Fix quoted-printable encoding of the subject. (Pear suxx). Signed-off-by: Florent Bruneau --- diff --git a/classes/plmailer.php b/classes/plmailer.php index 95e5a5c..45f3a8a 100644 --- a/classes/plmailer.php +++ b/classes/plmailer.php @@ -196,6 +196,20 @@ class PlMailer extends Mail_Mime { return parent::setFrom($this->correct_emails($email)); } + static function encodeQP($char) + { + return sprintf('=%02X', ord($char)); + } + + public function setSubject($subject) + { + if (!preg_match('/^[\x21-\x3C\x3e-\x7e]*$/', $subject)) { + $subject = '=?UTF-8?Q?' . preg_replace('/[^\x21-\x3C\x3e-\x7e]/e', 'PlMailer::encodeQP("\0")', $subject) + . '?='; + } + return parent::setSubject($subject); + } + public function addHeader($hdr,$val) { switch($hdr) {