예제 #1
0
파일: Mail.php 프로젝트: rdallasgray/bbx
 public static function instance()
 {
     $args = func_get_args();
     $userOptions = array();
     if (count($args) > 0) {
         $userOptions = $args[0];
     }
     if (self::$_instance === null) {
         $options = array();
         if (isset(Bbx_Config::get()->site->smtp_username)) {
             $options = array('auth' => 'login', 'username' => Bbx_Config::get()->site->smtp_username, 'password' => Bbx_Config::get()->site->smtp_password);
         }
         if (isset(Bbx_Config::get()->site->smtp_port)) {
             $options['port'] = Bbx_Config::get()->site->smtp_port;
         }
         if (isset(Bbx_Config::get()->site->smtp_ssl)) {
             $options['ssl'] = Bbx_Config::get()->site->smtp_ssl;
         }
         $port = array_key_exists('port', $options) ? $options['port'] : 25;
         $options = array_merge($options, $userOptions);
         $transport = new Zend_Mail_Transport_Smtp(Bbx_Config::get()->site->smtp_server, $options);
         Zend_Mail::setDefaultTransport($transport);
         self::$_instance = new Bbx_Mail();
     }
     return self::$_instance;
 }
예제 #2
0
파일: Error.php 프로젝트: rdallasgray/bbx
 public function notify(Exception $e)
 {
     if (isset(Bbx_Config::get()->site->support_address) && APPLICATION_ENV != 'development') {
         try {
             $mail = Bbx_Mail::instance();
             $mail->setFrom('error@' . Bbx_Config::get()->site->location, Bbx_Config::get()->site->location);
             $mail->setBodyText($this->getRequest()->getRequestUri() . "\n\n" . $e->getMessage());
             $mail->addTo(Bbx_Config::get()->site->support_address);
             $mail->setSubject('Error at ' . Bbx_Config::get()->site->location);
             $mail->sendAsync();
         } catch (Exception $exc) {
             Bbx_Log::debug(print_r($e, true));
             Bbx_Log::debug("Couldn't send mail: " . $exc->getMessage());
         }
     } else {
         Bbx_Log::debug(print_r($e, true));
     }
 }
예제 #3
0
<?php

require 'init.php';
$mail = Bbx_Mail::instance();
$mail->setFrom((string) $argv[1])->setBodyText((string) $argv[3])->setSubject((string) $argv[4]);
foreach (explode(',', (string) $argv[2]) as $to) {
    $mail->addTo($to);
}
try {
    $mail->send();
} catch (Exception $e) {
    Bbx_Log::write("Couldn't send mail: " . $e->getMessage());
}