'min' => 0,
'max' => 0,
),
- 'remote' => array(
- 'desc' => 'Return to referer rather then die',
- 'default' => 0,
- 'short' => 'r',
- 'min' => 0,
- 'max' => 0,
- ),
'send-to' => array(
'desc' => 'Send the message to this address, rather than the one listed.',
'default' => '',
);
var $table = 'core_notify';
- var $remote = false;
+ var $error_handler = 'die';
function getAuth()
{
DB_DataObject::debugLevel($opts['DB_DataObject-debug']);
}
- if(!empty($opts['remote'])){
- $this->remote = true;
- }
//DB_DataObject::debugLevel(1);
//date_default_timezone_set('UTC');
// phpinfo();exit;
// since some of them have spaces?!?!
$p->email = trim($p->email);
-
require_once 'Validate.php';
if (!Validate::email($p->email, true)) {
$ev = $this->addEvent('NOTIFY', $w, "INVALID ADDRESS: " . $p->email);
$this->addEvent('NOTIFY', $w, 'MX LOOKUP FAILED ' . $dom );
$w->act_when = date('Y-m-d H:i:s', strtotime('NOW + ' . $retry . ' MINUTES'));
$w->update($ww);
- $this->errorHandler(date('Y-m-d h:i:s') . " - GREYLISTED\n");
+ $this->errorHandler(date('Y-m-d h:i:s') . " - MX LOOKUP FAILED\n");
}
$ev = $this->addEvent('NOTIFY', $w, "BAD ADDRESS - ". $p->email );
// enable cc in notify..
if (!empty($email['headers']['Cc'])) {
- $mailer = Mail::factory('smtp', array(
+ $cmailer = Mail::factory('smtp', array(
//'host' => $dom ,
// 'debug' => true
));
$email['headers']['Subject'] = "(CC): " . $email['headers']['Subject'];
- $mailer->send($email['headers']['Cc'],
+ $cmailer->send($email['headers']['Cc'],
$email['headers'], $email['body']);
}
if (!empty($email['bcc'])) {
- $mailer = Mail::factory('smtp', array(
+ $cmailer = Mail::factory('smtp', array(
//'host' => $dom ,
// 'debug' => true
));
$email['headers']['Subject'] = "(CC): " . $email['headers']['Subject'];
- $mailer->send($email['bcc'],
+ $cmailer->send($email['bcc'],
$email['headers'], $email['body']);
}
if (in_array($code, array( 421, 450, 451, 452)) && $next_try_min < (2*24*60)) {
// try again later..
// check last event for this item..
- $errmsg= $fail ? ($res->userinfo['smtpcode'] . ': ' .$res->toString()) : " - UNKNOWN ERROR";
- if (isset($res->userinfo['smtptext'])) {
+ //$errmsg= $fail ? ($res->userinfo['smtpcode'] . ': ' .$res->toString()) : " - UNKNOWN ERROR";
+ $errmsg= $res->userinfo['smtpcode'] . ': ' .$res->message ;
+ if (!empty($res->userinfo['smtptext'])) {
$errmsg= $res->userinfo['smtpcode'] . ':' . $res->userinfo['smtptext'];
}
//print_r($res);
$this->addEvent('NOTIFY', $w, 'GREYLISTED - ' . $errmsg);
$w->act_when = date('Y-m-d H:i:s', strtotime('NOW + ' . $retry . ' MINUTES'));
$w->update($ww);
- $this->errorHandler(date('Y-m-d h:i:s') . " - GREYLISTED\n");
+
+
+ $this->errorHandler(date('Y-m-d h:i:s') . " - GREYLISTED - $errmsg \n");
}
$fail = true;
break;
function errorHandler($msg)
{
- if(empty($this->remote)){
- die($msg);
+ if($this->error_handler == 'exception'){
+ throw new Exception($msg);
}
- return $msg;
+ die($msg);
+
+
}
}
\ No newline at end of file