return parent::setFrom($this->correct_emails($email));
}
+ static function encodeQP($char)
+ {
+ return sprintf('=%02X', ord($char));
+ }
+
+ public function setSubject($subject)
+ {
+ if (!preg_match('/^[\x20-\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) {
if (!($globals->debug & DEBUG_SMARTY)) {
$level = error_reporting(0);
}
+ $this->page->assign_by_ref('globals', $globals);
$this->page->run('head'); // process page headers
$this->wiki = trim($this->page->run('wiki')); // get wiki
if (!$this->wiki) {
$this->processPage($with_html);
if (S::user()) {
$this->addHeader('X-Org-Mail', S::user()->forlifeEmail());
- } else if (S::v('forlife')) {
- // TODO(vzanotti): trash this code when hruid will be part of master.
- global $globals;
- $this->addHeader('X-Org-Mail', S::v('forlife') . '@' . $globals->mail->domain);
}
$addrs = Array();
foreach(Array('To', 'Cc', 'Bcc') as $hdr) {