Skip to content

Commit 87e8730

Browse files
committed
Remove PHPMailer's autoloader
Solves issue where __autoload cannot be used on PHP 7.2.
1 parent 50e20eb commit 87e8730

2 files changed

Lines changed: 7 additions & 44 deletions

File tree

qa-include/app/emails.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,8 @@ function qa_send_email($params)
132132

133133
// @error_log(print_r($params, true));
134134

135-
require_once QA_INCLUDE_DIR . 'vendor/PHPMailer/PHPMailerAutoload.php';
135+
require_once QA_INCLUDE_DIR . 'vendor/PHPMailer/class.phpmailer.php';
136+
require_once QA_INCLUDE_DIR . 'vendor/PHPMailer/class.smtp.php';
136137

137138
$mailer = new PHPMailer();
138139
$mailer->CharSet = 'utf-8';
Lines changed: 5 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,11 @@
11
<?php
22
/**
3-
* PHPMailer SPL autoloader.
4-
* PHP Version 5
5-
* @package PHPMailer
6-
* @link https://github.com/PHPMailer/PHPMailer/ The PHPMailer GitHub project
7-
* @author Marcus Bointon (Synchro/coolbru) <phpmailer@synchromedia.co.uk>
8-
* @author Jim Jagielski (jimjag) <jimjag@gmail.com>
9-
* @author Andy Prevost (codeworxtech) <codeworxtech@users.sourceforge.net>
10-
* @author Brent R. Matzelle (original founder)
11-
* @copyright 2012 - 2014 Marcus Bointon
12-
* @copyright 2010 - 2012 Jim Jagielski
13-
* @copyright 2004 - 2009 Andy Prevost
14-
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
15-
* @note This program is distributed in the hope that it will be useful - WITHOUT
16-
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17-
* FITNESS FOR A PARTICULAR PURPOSE.
3+
* @deprecated This file is deprecated; please use Q2A built-in functions for sending emails.
184
*/
195

20-
/**
21-
* PHPMailer SPL autoloader.
22-
* @param string $classname The name of the class to load
23-
*/
24-
function PHPMailerAutoload($classname)
25-
{
26-
//Can't use __DIR__ as it's only in PHP 5.3+
27-
$filename = dirname(__FILE__).DIRECTORY_SEPARATOR.'class.'.strtolower($classname).'.php';
28-
if (is_readable($filename)) {
29-
require $filename;
30-
}
6+
if (defined('QA_DEBUG_PERFORMANCE') && QA_DEBUG_PERFORMANCE) {
7+
trigger_error('Included file ' . basename(__FILE__) . ' is deprecated');
318
}
329

33-
if (version_compare(PHP_VERSION, '5.1.2', '>=')) {
34-
//SPL autoloading was introduced in PHP 5.1.2
35-
if (version_compare(PHP_VERSION, '5.3.0', '>=')) {
36-
spl_autoload_register('PHPMailerAutoload', true, true);
37-
} else {
38-
spl_autoload_register('PHPMailerAutoload');
39-
}
40-
} else {
41-
/**
42-
* Fall back to traditional autoload for old PHP versions
43-
* @param string $classname The name of the class to load
44-
*/
45-
function __autoload($classname)
46-
{
47-
PHPMailerAutoload($classname);
48-
}
49-
}
10+
require_once QA_INCLUDE_DIR . 'vendor/PHPMailer/class.phpmailer.php';
11+
require_once QA_INCLUDE_DIR . 'vendor/PHPMailer/class.smtp.php';

0 commit comments

Comments
 (0)