use PHPMailer via composer
Signed-off-by: Michael Kaufmann <d00p@froxlor.org>
This commit is contained in:
@@ -17,9 +17,14 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use \Froxlor\Database;
|
||||||
|
use \Froxlor\Settings;
|
||||||
|
use \Froxlor\Api\Commands\Froxlor;
|
||||||
|
|
||||||
define('AREA', 'admin');
|
define('AREA', 'admin');
|
||||||
require './lib/init.php';
|
require './lib/init.php';
|
||||||
|
|
||||||
|
|
||||||
// get sql-root access data
|
// get sql-root access data
|
||||||
Database::needRoot(true);
|
Database::needRoot(true);
|
||||||
Database::needSqlData();
|
Database::needSqlData();
|
||||||
@@ -337,7 +342,7 @@ elseif ($page == 'testmail')
|
|||||||
/**
|
/**
|
||||||
* Initialize the mailingsystem
|
* Initialize the mailingsystem
|
||||||
*/
|
*/
|
||||||
$testmail = new PHPMailer(true);
|
$testmail = new \PHPMailer\PHPMailer\PHPMailer(true);
|
||||||
$testmail->CharSet = "UTF-8";
|
$testmail->CharSet = "UTF-8";
|
||||||
|
|
||||||
if (Settings::Get('system.mail_use_smtp')) {
|
if (Settings::Get('system.mail_use_smtp')) {
|
||||||
@@ -355,7 +360,7 @@ elseif ($page == 'testmail')
|
|||||||
}
|
}
|
||||||
|
|
||||||
$_mailerror = false;
|
$_mailerror = false;
|
||||||
if (PHPMailer::ValidateAddress(Settings::Get('panel.adminmail')) !== false) {
|
if (\PHPMailer\PHPMailer\PHPMailer::ValidateAddress(Settings::Get('panel.adminmail')) !== false) {
|
||||||
// set return-to address and custom sender-name, see #76
|
// set return-to address and custom sender-name, see #76
|
||||||
$testmail->SetFrom(Settings::Get('panel.adminmail'), Settings::Get('panel.adminmail_defname'));
|
$testmail->SetFrom(Settings::Get('panel.adminmail'), Settings::Get('panel.adminmail_defname'));
|
||||||
if (Settings::Get('panel.adminmail_return') != '') {
|
if (Settings::Get('panel.adminmail_return') != '') {
|
||||||
@@ -369,7 +374,7 @@ elseif ($page == 'testmail')
|
|||||||
$testmail->MsgHTML(str_replace("\n", "<br />", $mail_body));
|
$testmail->MsgHTML(str_replace("\n", "<br />", $mail_body));
|
||||||
$testmail->AddAddress($test_addr);
|
$testmail->AddAddress($test_addr);
|
||||||
$testmail->Send();
|
$testmail->Send();
|
||||||
} catch(phpmailerException $e) {
|
} catch(\PHPMailer\PHPMailer\Exception $e) {
|
||||||
$mailerr_msg = $e->errorMessage();
|
$mailerr_msg = $e->errorMessage();
|
||||||
$_mailerror = true;
|
$_mailerror = true;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
|
|||||||
@@ -41,7 +41,8 @@
|
|||||||
"ext-curl" : "*",
|
"ext-curl" : "*",
|
||||||
"ext-json" : "*",
|
"ext-json" : "*",
|
||||||
"ext-openssl": "*",
|
"ext-openssl": "*",
|
||||||
"mso/idna-convert" : "1.*"
|
"mso/idna-convert" : "1.*",
|
||||||
|
"phpmailer/phpmailer": "~6.0"
|
||||||
},
|
},
|
||||||
"require-dev" : {
|
"require-dev" : {
|
||||||
"phpunit/phpunit" : "6.5.13",
|
"phpunit/phpunit" : "6.5.13",
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ abstract class ApiCommand extends ApiParameter
|
|||||||
/**
|
/**
|
||||||
* mail interface
|
* mail interface
|
||||||
*
|
*
|
||||||
* @var \PHPMailer
|
* @var \PHPMailer\PHPMailer\PHPMailer
|
||||||
*/
|
*/
|
||||||
private $mail = null;
|
private $mail = null;
|
||||||
|
|
||||||
@@ -183,14 +183,14 @@ abstract class ApiCommand extends ApiParameter
|
|||||||
/**
|
/**
|
||||||
* initialize mail interface so an API wide mail-object is available
|
* initialize mail interface so an API wide mail-object is available
|
||||||
*
|
*
|
||||||
* @throws \phpmailerException
|
* @throws \PHPMailer\PHPMailer\Exception
|
||||||
*/
|
*/
|
||||||
private function initMail()
|
private function initMail()
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Initialize the mailingsystem
|
* Initialize the mailingsystem
|
||||||
*/
|
*/
|
||||||
$this->mail = new \PHPMailer(true);
|
$this->mail = new \PHPMailer\PHPMailer\PHPMailer(true);
|
||||||
$this->mail->CharSet = "UTF-8";
|
$this->mail->CharSet = "UTF-8";
|
||||||
|
|
||||||
if (\Froxlor\Settings::Get('system.mail_use_smtp')) {
|
if (\Froxlor\Settings::Get('system.mail_use_smtp')) {
|
||||||
@@ -207,7 +207,7 @@ abstract class ApiCommand extends ApiParameter
|
|||||||
$this->mail->Port = \Froxlor\Settings::Get('system.mail_smtp_port');
|
$this->mail->Port = \Froxlor\Settings::Get('system.mail_smtp_port');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (\PHPMailer::validateAddress(\Froxlor\Settings::Get('panel.adminmail')) !== false) {
|
if (\PHPMailer\PHPMailer\PHPMailer::validateAddress(\Froxlor\Settings::Get('panel.adminmail')) !== false) {
|
||||||
// set return-to address and custom sender-name, see #76
|
// set return-to address and custom sender-name, see #76
|
||||||
$this->mail->setFrom(\Froxlor\Settings::Get('panel.adminmail'), \Froxlor\Settings::Get('panel.adminmail_defname'));
|
$this->mail->setFrom(\Froxlor\Settings::Get('panel.adminmail'), \Froxlor\Settings::Get('panel.adminmail_defname'));
|
||||||
if (\Froxlor\Settings::Get('panel.adminmail_return') != '') {
|
if (\Froxlor\Settings::Get('panel.adminmail_return') != '') {
|
||||||
@@ -279,7 +279,7 @@ abstract class ApiCommand extends ApiParameter
|
|||||||
/**
|
/**
|
||||||
* return mailer instance
|
* return mailer instance
|
||||||
*
|
*
|
||||||
* @return \PHPMailer
|
* @return \PHPMailer\PHPMailer\PHPMailer
|
||||||
*/
|
*/
|
||||||
protected function mailer()
|
protected function mailer()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
<?php
|
|
||||||
/**
|
|
||||||
* PHPMailer SPL autoloader.
|
|
||||||
* PHP Version 5
|
|
||||||
* @package PHPMailer
|
|
||||||
* @link https://github.com/PHPMailer/PHPMailer/ The PHPMailer GitHub project
|
|
||||||
* @author Marcus Bointon (Synchro/coolbru) <phpmailer@synchromedia.co.uk>
|
|
||||||
* @author Jim Jagielski (jimjag) <jimjag@gmail.com>
|
|
||||||
* @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
|
|
||||||
* @author Brent R. Matzelle (original founder)
|
|
||||||
* @copyright 2012 - 2014 Marcus Bointon
|
|
||||||
* @copyright 2010 - 2012 Jim Jagielski
|
|
||||||
* @copyright 2004 - 2009 Andy Prevost
|
|
||||||
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
|
|
||||||
* @note This program is distributed in the hope that it will be useful - WITHOUT
|
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* PHPMailer SPL autoloader.
|
|
||||||
* @param string $classname The name of the class to load
|
|
||||||
*/
|
|
||||||
function PHPMailerAutoload($classname)
|
|
||||||
{
|
|
||||||
//Can't use __DIR__ as it's only in PHP 5.3+
|
|
||||||
$filename = dirname(__FILE__).DIRECTORY_SEPARATOR.'class.'.strtolower($classname).'.php';
|
|
||||||
if (is_readable($filename)) {
|
|
||||||
require $filename;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (version_compare(PHP_VERSION, '5.1.2', '>=')) {
|
|
||||||
//SPL autoloading was introduced in PHP 5.1.2
|
|
||||||
if (version_compare(PHP_VERSION, '5.3.0', '>=')) {
|
|
||||||
spl_autoload_register('PHPMailerAutoload', true, true);
|
|
||||||
} else {
|
|
||||||
spl_autoload_register('PHPMailerAutoload');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
/**
|
|
||||||
* Fall back to traditional autoload for old PHP versions
|
|
||||||
* @param string $classname The name of the class to load
|
|
||||||
*/
|
|
||||||
function __autoload($classname)
|
|
||||||
{
|
|
||||||
PHPMailerAutoload($classname);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1 +0,0 @@
|
|||||||
PHPMailerAutoload.php
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -17,6 +17,9 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use \Froxlor\Database;
|
||||||
|
use \Froxlor\Settings;
|
||||||
|
|
||||||
header("Content-Type: text/html; charset=UTF-8");
|
header("Content-Type: text/html; charset=UTF-8");
|
||||||
|
|
||||||
// prevent Froxlor pages from being cached
|
// prevent Froxlor pages from being cached
|
||||||
@@ -120,7 +123,7 @@ require FROXLOR_INSTALL_DIR.'/lib/tables.inc.php';
|
|||||||
/**
|
/**
|
||||||
* Create a new idna converter
|
* Create a new idna converter
|
||||||
*/
|
*/
|
||||||
$idna_convert = new idna_convert_wrapper();
|
$idna_convert = new \Froxlor\Idna\IdnaWrapper();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If Froxlor was called via HTTPS -> enforce it for the next time by settings HSTS header according to settings
|
* If Froxlor was called via HTTPS -> enforce it for the next time by settings HSTS header according to settings
|
||||||
@@ -523,7 +526,7 @@ if ($page == '') {
|
|||||||
/**
|
/**
|
||||||
* Initialize the mailingsystem
|
* Initialize the mailingsystem
|
||||||
*/
|
*/
|
||||||
$mail = new PHPMailer(true);
|
$mail = new \PHPMailer\PHPMailer\PHPMailer(true);
|
||||||
$mail->CharSet = "UTF-8";
|
$mail->CharSet = "UTF-8";
|
||||||
|
|
||||||
if (Settings::Get('system.mail_use_smtp')) {
|
if (Settings::Get('system.mail_use_smtp')) {
|
||||||
@@ -540,7 +543,7 @@ if (Settings::Get('system.mail_use_smtp')) {
|
|||||||
$mail->Port = Settings::Get('system.mail_smtp_port');
|
$mail->Port = Settings::Get('system.mail_smtp_port');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PHPMailer::ValidateAddress(Settings::Get('panel.adminmail')) !== false) {
|
if (\PHPMailer\PHPMailer\PHPMailer::ValidateAddress(Settings::Get('panel.adminmail')) !== false) {
|
||||||
// set return-to address and custom sender-name, see #76
|
// set return-to address and custom sender-name, see #76
|
||||||
$mail->SetFrom(Settings::Get('panel.adminmail'), Settings::Get('panel.adminmail_defname'));
|
$mail->SetFrom(Settings::Get('panel.adminmail'), Settings::Get('panel.adminmail_defname'));
|
||||||
if (Settings::Get('panel.adminmail_return') != '') {
|
if (Settings::Get('panel.adminmail_return') != '') {
|
||||||
|
|||||||
@@ -17,13 +17,16 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
use \Froxlor\Database;
|
||||||
|
use \Froxlor\Settings;
|
||||||
|
|
||||||
$cronlog->logAction(CRON_ACTION, LOG_INFO, 'Web- and Traffic-usage reporting started...');
|
$cronlog->logAction(CRON_ACTION, LOG_INFO, 'Web- and Traffic-usage reporting started...');
|
||||||
$yesterday = time() - (60 * 60 * 24);
|
$yesterday = time() - (60 * 60 * 24);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize the mailingsystem
|
* Initialize the mailingsystem
|
||||||
*/
|
*/
|
||||||
$mail = new PHPMailer(true);
|
$mail = new \PHPMailer\PHPMailer\PHPMailer(true);
|
||||||
$mail->CharSet = "UTF-8";
|
$mail->CharSet = "UTF-8";
|
||||||
|
|
||||||
if (Settings::Get('system.mail_use_smtp')) {
|
if (Settings::Get('system.mail_use_smtp')) {
|
||||||
@@ -40,7 +43,7 @@ if (Settings::Get('system.mail_use_smtp')) {
|
|||||||
$mail->Port = Settings::Get('system.mail_smtp_port');
|
$mail->Port = Settings::Get('system.mail_smtp_port');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PHPMailer::ValidateAddress(Settings::Get('panel.adminmail')) !== false) {
|
if (\PHPMailer\PHPMailer\PHPMailer::ValidateAddress(Settings::Get('panel.adminmail')) !== false) {
|
||||||
// set return-to address and custom sender-name, see #76
|
// set return-to address and custom sender-name, see #76
|
||||||
$mail->SetFrom(Settings::Get('panel.adminmail'), Settings::Get('panel.adminmail_defname'));
|
$mail->SetFrom(Settings::Get('panel.adminmail'), Settings::Get('panel.adminmail_defname'));
|
||||||
if (Settings::Get('panel.adminmail_return') != '') {
|
if (Settings::Get('panel.adminmail_return') != '') {
|
||||||
@@ -136,7 +139,7 @@ if ((int)Settings::Get('system.report_trafficmax') > 0)
|
|||||||
$mail->MsgHTML(nl2br($mail_body));
|
$mail->MsgHTML(nl2br($mail_body));
|
||||||
$mail->AddAddress($row['email'], $row['firstname'] . ' ' . $row['name']);
|
$mail->AddAddress($row['email'], $row['firstname'] . ' ' . $row['name']);
|
||||||
$mail->Send();
|
$mail->Send();
|
||||||
} catch(phpmailerException $e) {
|
} catch(\PHPMailer\PHPMailer\Exception $e) {
|
||||||
$mailerr_msg = $e->errorMessage();
|
$mailerr_msg = $e->errorMessage();
|
||||||
$_mailerror = true;
|
$_mailerror = true;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
@@ -234,7 +237,7 @@ if ((int)Settings::Get('system.report_trafficmax') > 0)
|
|||||||
$mail->MsgHTML(nl2br($mail_body));
|
$mail->MsgHTML(nl2br($mail_body));
|
||||||
$mail->AddAddress($row['email'], $row['name']);
|
$mail->AddAddress($row['email'], $row['name']);
|
||||||
$mail->Send();
|
$mail->Send();
|
||||||
} catch(phpmailerException $e) {
|
} catch(\PHPMailer\PHPMailer\Exception $e) {
|
||||||
$mailerr_msg = $e->errorMessage();
|
$mailerr_msg = $e->errorMessage();
|
||||||
$_mailerror = true;
|
$_mailerror = true;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
@@ -316,7 +319,7 @@ if ((int)Settings::Get('system.report_trafficmax') > 0)
|
|||||||
$mail->Body = $mail_body;
|
$mail->Body = $mail_body;
|
||||||
$mail->AddAddress($row['email'], $row['name']);
|
$mail->AddAddress($row['email'], $row['name']);
|
||||||
$mail->Send();
|
$mail->Send();
|
||||||
} catch(phpmailerException $e) {
|
} catch(\PHPMailer\PHPMailer\Exception $e) {
|
||||||
$mailerr_msg = $e->errorMessage();
|
$mailerr_msg = $e->errorMessage();
|
||||||
$_mailerror = true;
|
$_mailerror = true;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user