From 5ec9aef340bb31adb4f70f8a791623893b6f23a6 Mon Sep 17 00:00:00 2001 From: Florent Bruneau Date: Sun, 28 Sep 2008 17:36:27 +0200 Subject: [PATCH] Fix quoted-printable encoding of the subject. (Pear suxx). Signed-off-by: Florent Bruneau --- classes/plmailer.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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) { -- 2.1.4