Вход Регистрация
Файл: classes/email.class.php
Строк: 80
<?php
defined
('_VALID') or die('Restricted Access!');

use 
PHPMailerPHPMailerPHPMailer;
if ( !
class_exists('PHPMailer') ) {
    require 
$config['BASE_DIR']. '/include/phpmailer/PHPMailer.php';
}
if ( !
class_exists('SMTP') ) {
    require 
$config['BASE_DIR']. '/include/phpmailer/SMTP.php';
}
require 
$config['BASE_DIR']. '/include/phpmailer/Exception.php';



class 
VMail extends PHPMailer
{
    public function 
__construct()
    {
        
$this->config();
        
$this->IsHTML(true);
    }
    
    public function 
config()
    {
        global 
$config;
        if ( 
$config['mailer'] == 'mail' ) {
            
$this->Mailer       'mail';
        } elseif ( 
$config['mailer'] == 'sendmail' ) {
            
$this->isSendmail();
        } elseif ( 
$config['mailer'] == 'smtp' ) {
            
$this->isSMTP();
            if (
$config['smtp_autotls'] == 'true') {
            
$this->SMTPAutoTLS  true;
            } else {
            
$this->SMTPAutoTLS  false;    
            }
            
$this->Host         $config['smtp'];
            
$this->Port         $config['smtp_port'];
            if (
$config['smtp_prefix'] == 'false') {
            
$this->SMTPSecure   false;
            } else {
            
$this->SMTPSecure   $config['smtp_prefix'];    
            }
            
$this->SMTPDebug     $config['smtp_debug']; 
            if ( 
$config['smtp_auth'] ) {
                
$this->SMTPAuth true;
                
$this->Username $config['smtp_username'];
                
$this->Password $config['smtp_password'];
            }
            
        } else {
            
$config['mailer']   = 'mail';
            
$this->config();
        }
        
        
$this->WordWrap 75;
    }
    
    public function 
set($name=''$value '')
    {
        global 
$config;
    
        
$this->From     $config['admin_email'];
        
$this->FromName $config['site_name'];
        
$this->Sender   $config['admin_email'];
        
$this->AddReplyTo($config['admin_email'], $config['site_name']);
    }
    
    public function 
setNoReply()
    {
        global 
$config;
    
        
$this->From     $config['noreply_email'];
        
$this->FromName $config['site_name'];
        
$this->Sender   $config['noreply_email'];
        
$this->AddReplyTo($config['noreply_email'], $config['site_name']);
    }
    
    public function 
sendPredefined($email$email_id$search=array(), $replace=array())
    {
        global 
$config$conn;
        
        if ( !
class_exists('VFile') ) {
            require 
$config['BASE_DIR']. '/classes/file.class.php';
        }
        
        
$sql            "SELECT email_subject, email_path FROM emailinfo WHERE email_id = '" .$email_id"' LIMIT 1";
        
$rs             $conn->execute($sql);
        
$email_subject  str_replace($search$replace$rs->fields['email_subject']);
        
$email_path     $config['BASE_DIR']. '/templates/' .$rs->fields['email_path'];
        
$body           VFile::read($email_path);
        
$body           str_replace($search$replace$body);
                
        
$this->setNoReply();
        
$this->Subject  $email_subject;
        
$this->AltBody  $body;
        
$this->Body     nl2br($body);
        if (
is_array($email)) {
            foreach(
$email as $email_address) {
                
$this->AddAddress($email_address);
                
$this->Send();
                
$this->ClearAddresses();
            }
        } else {        
            
$this->AddAddress($email);
            
$this->Send();
        }
    }
}
?>
Онлайн: 1
Реклама