Вход Регистрация
Файл: concrete5.7.5.6/concrete/controllers/single_page/dashboard/system/mail/method/test.php
Строк: 111
<?php
namespace ConcreteControllerSinglePageDashboardSystemMailMethod;
use 
ConcreteCorePageControllerDashboardPageController;
use 
Config;
use 
Loader;
use 
Exception;

class 
Test extends DashboardPageController {
    protected 
$sendUndefinedTasksToView false;

    public function 
successful($mailRecipient) {
        
$this->set('mailRecipient'$mailRecipient);
        
$this->set("message"t('The test email has been successfully sent to %s.'$mailRecipient) . "n" t('You will receive a test message from %s'Config::get('concrete.email.default.address')));
    }

    public function 
do_test() {
        if (!
Loader::helper('validation/token')->validate('test')) {
            
$this->error->add(t('Invalid Token.'));
            return;
        }
        
$mailRecipient $this->post('mailRecipient');
        if(!
is_string($mailRecipient)) {
            
$mailRecipient '';
        }
        if(!
Config::get('concrete.email.enabled')) {
            
$this->error->add(t('The mail system is disabled.'));
        }
        elseif(!
strlen($mailRecipient)) {
            
$this->error->add(t('The recipient address of the test email has not been specified.'));
        }
        elseif(!
Loader::helper('validation/strings')->email($mailRecipienttrue)) {
            
$this->error->add(t("The email address '%s' is not valid."h($mailRecipient)));
        }
        else {
            try {
                
/* @var $mail ConcreteCoreMailService */
                
$mail Loader::helper('mail');
                
$mail->setTesting(true);
                
$mail->setSubject(t(/*i18n: %s is the site name*/'Test message from %s'Config::get('concrete.site')));
                
$mail->to($mailRecipient);
                
$body t('This is a test message.');
                
$body .= "nn" t('Configuration:');
                
$body .= "n- " t('Send mail method: %s'Config::get('concrete.mail.method'));
                switch(
Config::get('concrete.mail.method')) {
                    case 
'smtp':
                        
$body .= "n- " t('SMTP Server: %s'Config::get('concrete.mail.methods.smtp.server'));
                        
$body .= "n- " t('SMTP Port: %s'Config::get('concrete.mail.methods.smtp.port'tc('SMTP Port''default')));
                        
$body .= "n- " t('SMTP Encryption: %s'Config::get('concrete.mail.methods.smtp.encryption'tc('SMTP Encryption''none')));
                        if(!
Config::get('concrete.mail.methods.smtp.username')) {
                            
$body .= "n- " t('SMTP Authentication: none');
                        }
                        else {
                            
$body .= "n- " t('SMTP Username: %s'Config::get('concrete.mail.methods.smtp.username'));
                            
$body .= "n- " t('SMTP Password: %s'tc('Password''<hidden>'));
                        }
                        break;
                }
                
$mail->setBody($body);
                
$mail->sendMail();
                
$this->redirect('/dashboard/system/mail/method/test/''successful'rawurlencode($mailRecipient));
            }
            catch(
Exception $x) {
                
$this->error->add(t('The following error was found while trying to send the test email:') . '<br />' nl2br(h($x->getMessage())));
            }
        }
        
$this->set('mailRecipient'$mailRecipient);
    }
}
Онлайн: 0
Реклама