if(empty($this->id)){
return PEAR::raiseError("template [{$contents['template']}]has not been set");
}
+ if(empty($contents['subject'])){
+ $contents['subject'] = $this->subject;
+ }
- $contents['subject'] = $this->subject;
+ if(!empty($contents['rcpts']) && is_array($contents['rcpts'])){
+ $contents['rcpts'] = implode(',', $contents['rcpts']);
+ }
$ui = posix_getpwuid(posix_geteuid());
$cachePath = session_save_path() . '/email-cache-' . $ui['name'] . '/mail/' . $this->tableName() . '-' . $this->id . '.txt';
-// if(!$this->isGenerated($cachePath)){
- $this->cachedMailWithOutImages($force, false);
-// }
+ if($force || !$this->isGenerated($cachePath)){
+ $this->cachedMailWithOutImages($force, empty($contents['replace_links']) ? false : $contents['replace_links']);
+ }
require_once 'Pman/Core/Mailer.php';
}
$ret = $r->toData();
- print_r($ret);exit;
+
if(!$send){
return $ret;
}
- return $r->send($ret);
+ return $r->send();
}
function cachedMailWithOutImages($force = false, $replace_links = true)
{
-
$ui = posix_getpwuid(posix_geteuid());
$cachePath = session_save_path() . '/email-cache-' . $ui['name'] . '/mail/' . $this->tableName() . '-' . $this->id . '.txt';
$fh = fopen($cachePath, 'w');
fwrite($fh, implode("\n", array(
- "From: {t.messageFrom():h} ",
- "To: {if:t.person}{t.person.getEmailFrom():h}{else:}{foreach:rcpts,v}{v:h};{end:}{end:}",
+ "From: {if:t.messageFrom}{t.messageFrom:h}{else:}{t.messageFrom():h}{end:}",
+ "To: {if:t.person}{t.person.getEmailFrom():h}{else:}{rcpts:h}{end:}",
"Subject: {t.subject} ",
- "X-Message-ID: {t.id} "
+ "X-Message-ID: {t.id} ",
+ "{if:t.replyTo}Reply-To: {t.replyTo:h}{end:}"
))."\n");