mirror of
https://github.com/kamilwylegala/cakephp2-php8.git
synced 2025-01-19 02:56:15 +00:00
EmailComponent: Accept arrays for $to variable (closes #293)
This commit is contained in:
parent
38365924eb
commit
a20c809796
1 changed files with 29 additions and 8 deletions
|
@ -363,7 +363,7 @@ class EmailComponent extends Object{
|
|||
*/
|
||||
function reset() {
|
||||
$this->template = null;
|
||||
$this->to = null;
|
||||
$this->to = array();
|
||||
$this->from = null;
|
||||
$this->replyTo = null;
|
||||
$this->return = null;
|
||||
|
@ -473,7 +473,11 @@ class EmailComponent extends Object{
|
|||
*/
|
||||
function __createHeader() {
|
||||
if ($this->delivery == 'smtp') {
|
||||
$this->__header[] = 'To: ' . $this->__formatAddress($this->to);
|
||||
if (is_array($this->to)) {
|
||||
$this->__header[] = 'To: ' . implode(', ', array_map(array($this, '__formatAddress'), $this->to));
|
||||
} else {
|
||||
$this->__header[] = 'To: ' . $this->__formatAddress($this->to);
|
||||
}
|
||||
}
|
||||
$this->__header[] = 'From: ' . $this->__formatAddress($this->from);
|
||||
|
||||
|
@ -692,10 +696,15 @@ class EmailComponent extends Object{
|
|||
function __mail() {
|
||||
$header = implode("\n", $this->__header);
|
||||
$message = implode("\n", $this->__message);
|
||||
if (ini_get('safe_mode')) {
|
||||
return @mail($this->to, $this->__encode($this->subject), $message, $header);
|
||||
if (is_array($this->to)) {
|
||||
$to = implode(', ', array_map(array($this, '__formatAddress'), $this->to));
|
||||
} else {
|
||||
$to = $this->to;
|
||||
}
|
||||
return @mail($this->to, $this->__encode($this->subject), $message, $header, $this->additionalParams);
|
||||
if (ini_get('safe_mode')) {
|
||||
return @mail($to, $this->__encode($this->subject), $message, $header);
|
||||
}
|
||||
return @mail($to, $this->__encode($this->subject), $message, $header, $this->additionalParams);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -748,8 +757,15 @@ class EmailComponent extends Object{
|
|||
return false;
|
||||
}
|
||||
|
||||
if (!$this->__smtpSend('RCPT TO: ' . $this->__formatAddress($this->to, true))) {
|
||||
return false;
|
||||
if (!is_array($this->to)) {
|
||||
$tos = array($this->to);
|
||||
} else {
|
||||
$tos = $this->to;
|
||||
}
|
||||
foreach ($tos as $to) {
|
||||
if (!$this->__smtpSend('RCPT TO: ' . $this->__formatAddress($to, true))) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($this->cc as $cc) {
|
||||
|
@ -814,12 +830,17 @@ class EmailComponent extends Object{
|
|||
$message = implode($nl, $this->__message);
|
||||
$fm = '<pre>';
|
||||
|
||||
if (is_array($this->to)) {
|
||||
$to = implode(', ', array_map(array($this, '__formatAddress'), $this->to));
|
||||
} else {
|
||||
$to = $this->to;
|
||||
}
|
||||
if ($this->delivery == 'smtp') {
|
||||
$fm .= sprintf('%s %s%s', 'Host:', $this->smtpOptions['host'], $nl);
|
||||
$fm .= sprintf('%s %s%s', 'Port:', $this->smtpOptions['port'], $nl);
|
||||
$fm .= sprintf('%s %s%s', 'Timeout:', $this->smtpOptions['timeout'], $nl);
|
||||
}
|
||||
$fm .= sprintf('%s %s%s', 'To:', $this->to, $nl);
|
||||
$fm .= sprintf('%s %s%s', 'To:', $to, $nl);
|
||||
$fm .= sprintf('%s %s%s', 'From:', $this->from, $nl);
|
||||
$fm .= sprintf('%s %s%s', 'Subject:', $this->__encode($this->subject), $nl);
|
||||
$fm .= sprintf('%s%3$s%3$s%s', 'Header:', $header, $nl);
|
||||
|
|
Loading…
Add table
Reference in a new issue