diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/images/smtp-mailer-email-logger.png b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/images/smtp-mailer-email-logger.png
new file mode 100644
index 00000000..ce032702
Binary files /dev/null and b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/images/smtp-mailer-email-logger.png differ
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/images/smtp-mailer-reply-to.png b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/images/smtp-mailer-reply-to.png
new file mode 100644
index 00000000..3e40f131
Binary files /dev/null and b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/images/smtp-mailer-reply-to.png differ
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/smtp-mailer-addons.css b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/smtp-mailer-addons.css
new file mode 100644
index 00000000..92ae90df
--- /dev/null
+++ b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/smtp-mailer-addons.css
@@ -0,0 +1,34 @@
+.smtp_mailer_addons_item_canvas{
+ background-color:#fff;
+ font-family:sans-serif,arial;
+ font-size:12px;
+ border:1px solid #ccc;
+ display:block;
+ float:left;
+ margin:3px 12px 12px 0;
+ padding:10px 0px 10px 10px;
+ position:relative;
+ width:222px;
+ height:340px;
+}
+.smtp_mailer_addons_item_canvas:hover{border-color:#999;}
+.smtp_mailer_addons_item_thumb img {height: 150px; width: 200px; padding: 5px; border: 1px solid #ccc;}
+.smtp_mailer_addons_item_thumb a img {border: 1px solid #ccc;}
+.smtp_mailer_addons_item_body{line-height:22px;height:170px;overflow:hidden;}
+.smtp_mailer_addons_item_name{font-size:16px;font-weight:bold;text-align: center;margin:10px 10px 10px 0px;}
+.smtp_mailer_addons_item_description{margin:10px 10px 5px 0px;/*text-align:justify;*/overflow:hidden;height:70px;}
+.smtp_mailer_addons_clear{clear:both;}
+.smtp_mailer_addons_item_details_link{
+ text-align: center;
+}
+.smtp_mailer_addons_item_details_link a{
+ border: 3px solid #2d3140;
+ color: #2d3140;
+ display: inline-block;
+ padding: 5px 15px;
+ text-decoration: none !important;
+}
+.smtp_mailer_addons_item_details_link a:hover{
+ background-color: #2d3140;
+ color: #FFF;
+}
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/smtp-mailer-addons.php b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/smtp-mailer-addons.php
new file mode 100644
index 00000000..0b32cb17
--- /dev/null
+++ b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/addons/smtp-mailer-addons.php
@@ -0,0 +1,49 @@
+';
+ echo '
' .__('SMTP Mailer Add-ons', 'smtp-mailer') . '
';
+ */
+ $addons_data = array();
+
+ $addon_1 = array(
+ 'name' => 'Reply-To',
+ 'thumbnail' => SMTP_MAILER_URL.'/addons/images/smtp-mailer-reply-to.png',
+ 'description' => 'Set a Reply-To address for all outgoing email messages',
+ 'page_url' => 'https://wphowto.net/how-to-add-a-reply-to-address-in-the-smtp-mailer-wordpress-plugin-6997',
+ );
+ array_push($addons_data, $addon_1);
+
+ $addon_2 = array(
+ 'name' => 'Email Logger',
+ 'thumbnail' => SMTP_MAILER_URL.'/addons/images/smtp-mailer-email-logger.png',
+ 'description' => 'Log and view all email messages',
+ 'page_url' => 'https://wphowto.net/smtp-mailer-email-logger-7066',
+ );
+ array_push($addons_data, $addon_2);
+
+ //Display the list
+ foreach ($addons_data as $addon) {
+ ?>
+
+
+
![<?php echo esc_attr($addon['name']);?>](<?php echo esc_url($addon['thumbnail']);?>)
+
+
+
+ ';//end of wrap
+}
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/languages/smtp-mailer.mo b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/languages/smtp-mailer.mo
new file mode 100644
index 00000000..8d576526
Binary files /dev/null and b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/languages/smtp-mailer.mo differ
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/languages/smtp-mailer.pot b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/languages/smtp-mailer.pot
new file mode 100644
index 00000000..a67a4fd9
--- /dev/null
+++ b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/languages/smtp-mailer.pot
@@ -0,0 +1,176 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: SMTP Mailer\n"
+"POT-Creation-Date: 2015-12-20 14:09+1000\n"
+"PO-Revision-Date: 2015-12-20 14:09+1000\n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.5.5\n"
+"X-Poedit-KeywordsList: _e;__\n"
+"X-Poedit-Basepath: .\n"
+"X-Poedit-SearchPath-0: .\n"
+
+#: main.php:66
+msgid "Settings"
+msgstr ""
+
+#: main.php:72
+msgid "SMTP Mailer"
+msgstr ""
+
+#: main.php:77
+msgid "General"
+msgstr ""
+
+#: main.php:78
+msgid "Test Email"
+msgstr ""
+
+#: main.php:79
+msgid "Server Info"
+msgstr ""
+
+#: main.php:82
+#, php-format
+msgid ""
+"Please visit the SMTP Mailer "
+"documentation page for usage instructions."
+msgstr ""
+
+#: main.php:141
+msgid "To"
+msgstr ""
+
+#: main.php:143
+msgid "Email address of the recipient"
+msgstr ""
+
+#: main.php:147
+msgid "Subject"
+msgstr ""
+
+#: main.php:149
+msgid "Subject of the email"
+msgstr ""
+
+#: main.php:153
+msgid "Message"
+msgstr ""
+
+#: main.php:155
+msgid "Email body"
+msgstr ""
+
+#: main.php:162
+msgid "Send Email"
+msgstr ""
+
+#: main.php:256
+msgid "Settings Saved!"
+msgstr ""
+
+#: main.php:286
+msgid "SMTP Host"
+msgstr ""
+
+#: main.php:288
+msgid ""
+"The SMTP server which will be used to send email. For example: smtp.gmail.com"
+msgstr ""
+
+#: main.php:292
+msgid "SMTP Authentication"
+msgstr ""
+
+#: main.php:295
+msgid "True"
+msgstr ""
+
+#: main.php:296
+msgid "False"
+msgstr ""
+
+#: main.php:298
+msgid ""
+"Whether to use SMTP Authentication when sending an email (recommended: True)."
+msgstr ""
+
+#: main.php:303
+msgid "SMTP Username"
+msgstr ""
+
+#: main.php:305
+msgid "Your SMTP Username."
+msgstr ""
+
+#: main.php:309
+msgid "SMTP Password"
+msgstr ""
+
+#: main.php:311
+msgid "Your SMTP Password."
+msgstr ""
+
+#: main.php:315
+msgid "Type of Encryption"
+msgstr ""
+
+#: main.php:318
+msgid "TLS"
+msgstr ""
+
+#: main.php:319
+msgid "SSL"
+msgstr ""
+
+#: main.php:320
+msgid "No Encryption"
+msgstr ""
+
+#: main.php:322
+msgid ""
+"The encryption which will be used when sending an email (recommended: TLS)."
+msgstr ""
+
+#: main.php:327
+msgid "SMTP Port"
+msgstr ""
+
+#: main.php:329
+msgid ""
+"The port which will be used when sending an email (587/465/25). If you "
+"choose TLS it should be set to 587. For SSL use port 465 instead."
+msgstr ""
+
+#: main.php:333
+msgid "From Email Address"
+msgstr ""
+
+#: main.php:335
+msgid ""
+"The email address which will be used as the From Address if it is not "
+"supplied to the mail function."
+msgstr ""
+
+#: main.php:339
+msgid "From Name"
+msgstr ""
+
+#: main.php:341
+msgid ""
+"The name which will be used as the From Name if it is not supplied to the "
+"mail function."
+msgstr ""
+
+#: main.php:348
+msgid "Save Changes"
+msgstr ""
+
+#: main.php:368
+msgid ""
+"SMTP Mailer plugin cannot send email until you enter your credentials in the "
+"settings."
+msgstr ""
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/main.php b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/main.php
new file mode 100644
index 00000000..562c1bad
--- /dev/null
+++ b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/main.php
@@ -0,0 +1,970 @@
+plugin_version);
+ define('SMTP_MAILER_SITE_URL', site_url());
+ define('SMTP_MAILER_HOME_URL', home_url());
+ define('SMTP_MAILER_URL', $this->plugin_url());
+ define('SMTP_MAILER_PATH', $this->plugin_path());
+ $this->plugin_includes();
+ $this->loader_operations();
+ }
+
+ function plugin_includes() {
+
+ }
+
+ function loader_operations() {
+ if (is_admin()) {
+ include_once('addons/smtp-mailer-addons.php');
+ }
+ add_action('plugins_loaded', array($this, 'plugins_loaded_handler'));
+ add_action('admin_menu', array($this, 'options_menu'));
+ add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts'));
+ //add_action('admin_notices', 'smtp_mailer_admin_notice');
+ add_filter('pre_wp_mail', 'smtp_mailer_pre_wp_mail', 10, 2);
+ }
+
+ function enqueue_admin_scripts($hook) {
+ if('settings_page_smtp-mailer-settings' != $hook) {
+ return;
+ }
+ wp_register_style('smtp-mailer-addons-menu', SMTP_MAILER_URL.'/addons/smtp-mailer-addons.css');
+ wp_enqueue_style('smtp-mailer-addons-menu');
+ }
+
+ function plugins_loaded_handler()
+ {
+ if(is_admin() && current_user_can('manage_options')){
+ add_filter('plugin_action_links', array($this, 'add_plugin_action_links'), 10, 2);
+ }
+ load_plugin_textdomain('smtp-mailer', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/');
+ }
+
+ function plugin_url() {
+ if ($this->plugin_url)
+ return $this->plugin_url;
+ return $this->plugin_url = plugins_url(basename(plugin_dir_path(__FILE__)), basename(__FILE__));
+ }
+
+ function plugin_path() {
+ if ($this->plugin_path)
+ return $this->plugin_path;
+ return $this->plugin_path = untrailingslashit(plugin_dir_path(__FILE__));
+ }
+
+ function add_plugin_action_links($links, $file) {
+ if ($file == plugin_basename(dirname(__FILE__) . '/main.php')) {
+ $links[] = ''.__('Settings', 'smtp-mailer').'';
+ }
+ return $links;
+ }
+
+ function options_menu() {
+ add_options_page(__('SMTP Mailer', 'smtp-mailer'), __('SMTP Mailer', 'smtp-mailer'), 'manage_options', 'smtp-mailer-settings', array($this, 'options_page'));
+ }
+
+ function options_page() {
+ $plugin_tabs = array(
+ 'smtp-mailer-settings' => __('General', 'smtp-mailer'),
+ 'smtp-mailer-settings&action=test-email' => __('Test Email', 'smtp-mailer'),
+ 'smtp-mailer-settings&action=server-info' => __('Server Info', 'smtp-mailer'),
+ 'smtp-mailer-settings&action=addons' => __('Add-ons', 'smtp-mailer'),
+ 'smtp-mailer-settings&action=advanced' => __('Advanced', 'smtp-mailer'),
+ );
+ $url = "https://wphowto.net/smtp-mailer-plugin-for-wordpress-1482";
+ $link_text = sprintf(__('Please visit the SMTP Mailer documentation page for usage instructions.', 'smtp-mailer'), esc_url($url));
+ $allowed_html_tags = array(
+ 'a' => array(
+ 'href' => array(),
+ 'target' => array()
+ )
+ );
+ echo 'SMTP Mailer v' . SMTP_MAILER_VERSION . '
';
+ echo '
'.wp_kses($link_text, $allowed_html_tags).'
';
+ $current = '';
+ $action = '';
+ if (isset($_GET['page'])) {
+ $current = sanitize_text_field($_GET['page']);
+ if (isset($_GET['action'])) {
+ $action = sanitize_text_field($_GET['action']);
+ $current .= "&action=" . $action;
+ }
+ }
+ $content = '';
+ $content .= '
';
+ foreach ($plugin_tabs as $location => $tabname) {
+ if ($current == $location) {
+ $class = ' nav-tab-active';
+ } else {
+ $class = '';
+ }
+ $content .= '' . $tabname . '';
+ }
+ $content .= '
';
+ $allowed_html_tags = array(
+ 'a' => array(
+ 'href' => array(),
+ 'class' => array()
+ ),
+ 'h2' => array(
+ 'href' => array(),
+ 'class' => array()
+ )
+ );
+ echo wp_kses($content, $allowed_html_tags);
+ if(!empty($action))
+ {
+ switch($action)
+ {
+ case 'test-email':
+ $this->test_email_settings();
+ break;
+ case 'server-info':
+ $this->server_info_settings();
+ break;
+ case 'addons':
+ smtp_mailer_display_addons();
+ break;
+ case 'advanced':
+ $this->advanced_settings();
+ break;
+ }
+ }
+ else
+ {
+ $this->general_settings();
+ }
+ echo '
';
+ }
+
+ function test_email_settings(){
+ if(isset($_POST['smtp_mailer_send_test_email'])){
+ $nonce = $_REQUEST['_wpnonce'];
+ if (!wp_verify_nonce($nonce, 'smtp_mailer_test_email')) {
+ wp_die(__('Error! Nonce Security Check Failed! please send the test email again.', 'smtp-mailer'));
+ }
+ $to = '';
+ if(isset($_POST['smtp_mailer_to_email']) && !empty($_POST['smtp_mailer_to_email'])){
+ $to = sanitize_email($_POST['smtp_mailer_to_email']);
+ }
+ $subject = '';
+ if(isset($_POST['smtp_mailer_email_subject']) && !empty($_POST['smtp_mailer_email_subject'])){
+ $subject = sanitize_text_field($_POST['smtp_mailer_email_subject']);
+ }
+ $message = '';
+ if(isset($_POST['smtp_mailer_email_body']) && !empty($_POST['smtp_mailer_email_body'])){
+ $message = sanitize_text_field($_POST['smtp_mailer_email_body']);
+ }
+ wp_mail($to, $subject, $message);
+ }
+ ?>
+
+
+
+
+ ';
+ $smtp_password = trim($_POST['smtp_password']);
+ $smtp_password = wp_unslash($smtp_password); // This removes slash (automatically added by WordPress) from the password when apostrophe is present
+ $smtp_password = base64_encode($smtp_password);
+ }
+ $type_of_encryption = '';
+ if(isset($_POST['type_of_encryption']) && !empty($_POST['type_of_encryption'])){
+ $type_of_encryption = sanitize_text_field($_POST['type_of_encryption']);
+ }
+ $smtp_port = '';
+ if(isset($_POST['smtp_port']) && !empty($_POST['smtp_port'])){
+ $smtp_port = sanitize_text_field($_POST['smtp_port']);
+ }
+ $from_email = '';
+ if(isset($_POST['from_email']) && !empty($_POST['from_email'])){
+ $from_email = sanitize_email($_POST['from_email']);
+ }
+ $from_name = '';
+ if(isset($_POST['from_name']) && !empty($_POST['from_name'])){
+ $from_name = sanitize_text_field(stripslashes($_POST['from_name']));
+ }
+ $force_from_address = '';
+ if(isset($_POST['force_from_address']) && !empty($_POST['force_from_address'])){
+ $force_from_address = sanitize_text_field($_POST['force_from_address']);
+ }
+ $disable_ssl_verification = '';
+ if(isset($_POST['disable_ssl_verification']) && !empty($_POST['disable_ssl_verification'])){
+ $disable_ssl_verification = sanitize_text_field($_POST['disable_ssl_verification']);
+ }
+ $options = array();
+ $options['smtp_host'] = $smtp_host;
+ $options['smtp_auth'] = $smtp_auth;
+ $options['smtp_username'] = $smtp_username;
+ if(!empty($smtp_password)){
+ $options['smtp_password'] = $smtp_password;
+ }
+ $options['type_of_encryption'] = $type_of_encryption;
+ $options['smtp_port'] = $smtp_port;
+ $options['from_email'] = $from_email;
+ $options['from_name'] = $from_name;
+ $options['force_from_address'] = $force_from_address;
+ $options['disable_ssl_verification'] = $disable_ssl_verification;
+ smtp_mailer_update_option($options);
+ echo '';
+ echo __('Settings Saved!', 'smtp-mailer');
+ echo '
';
+ }
+
+ $options = smtp_mailer_get_option();
+ if(!is_array($options)){
+ $options = smtp_mailer_get_empty_options_array();
+ }
+
+ // Avoid warning notice since this option was added later
+ if(!isset($options['force_from_address'])){
+ $options['force_from_address'] = '';
+ }
+
+ // Avoid warning notice since this option was added later
+ if(!isset($options['disable_ssl_verification'])){
+ $options['disable_ssl_verification'] = '';
+ }
+
+ ?>
+
+
+
+
+
+ ';
+ echo __('Settings Saved!', 'smtp-mailer');
+ echo '
';
+ }
+ $settings_fields = '';
+ $settings_fields = apply_filters('smtp_mailer_advanced_settings_fields', $settings_fields);
+ if(empty($settings_fields)){
+ return;
+ }
+ ?>
+
+
+
+ 0 ) {
+ $from_name = substr( $content, 0, $bracket_pos );
+ $from_name = str_replace( '"', '', $from_name );
+ $from_name = trim( $from_name );
+ }
+
+ $from_email = substr( $content, $bracket_pos + 1 );
+ $from_email = str_replace( '>', '', $from_email );
+ $from_email = trim( $from_email );
+
+ // Avoid setting an empty $from_email.
+ } elseif ( '' !== trim( $content ) ) {
+ $from_email = trim( $content );
+ }
+ break;
+ case 'content-type':
+ if ( str_contains( $content, ';' ) ) {
+ list( $type, $charset_content ) = explode( ';', $content );
+ $content_type = trim( $type );
+ if ( false !== stripos( $charset_content, 'charset=' ) ) {
+ $charset = trim( str_replace( array( 'charset=', '"' ), '', $charset_content ) );
+ } elseif ( false !== stripos( $charset_content, 'boundary=' ) ) {
+ $boundary = trim( str_replace( array( 'BOUNDARY=', 'boundary=', '"' ), '', $charset_content ) );
+ $charset = '';
+ }
+
+ // Avoid setting an empty $content_type.
+ } elseif ( '' !== trim( $content ) ) {
+ $content_type = trim( $content );
+ }
+ break;
+ case 'cc':
+ $cc = array_merge( (array) $cc, explode( ',', $content ) );
+ break;
+ case 'bcc':
+ $bcc = array_merge( (array) $bcc, explode( ',', $content ) );
+ break;
+ case 'reply-to':
+ $reply_to = array_merge( (array) $reply_to, explode( ',', $content ) );
+ break;
+ default:
+ // Add it to our grand headers array.
+ $headers[ trim( $name ) ] = trim( $content );
+ break;
+ }
+ }
+ }
+ }
+
+ // Empty out the values that may be set.
+ $phpmailer->clearAllRecipients();
+ $phpmailer->clearAttachments();
+ $phpmailer->clearCustomHeaders();
+ $phpmailer->clearReplyTos();
+ $phpmailer->Body = '';
+ $phpmailer->AltBody = '';
+
+ // Set "From" name and email.
+
+ // If we don't have a name from the input headers.
+ if ( ! isset( $from_name ) ) {
+ $from_name = $options['from_name'];//'WordPress';
+ }
+
+ /*
+ * If we don't have an email from the input headers, default to wordpress@$sitename
+ * Some hosts will block outgoing mail from this address if it doesn't exist,
+ * but there's no easy alternative. Defaulting to admin_email might appear to be
+ * another option, but some hosts may refuse to relay mail from an unknown domain.
+ * See https://core.trac.wordpress.org/ticket/5007.
+ */
+ if ( ! isset( $from_email ) ) {
+ // Get the site domain and get rid of www.
+ $sitename = wp_parse_url( network_home_url(), PHP_URL_HOST );
+ $from_email = 'wordpress@';
+
+ if ( null !== $sitename ) {
+ if ( str_starts_with( $sitename, 'www.' ) ) {
+ $sitename = substr( $sitename, 4 );
+ }
+
+ $from_email .= $sitename;
+ }
+ $from_email = $options['from_email'];//'wordpress@' . $sitename;
+ }
+
+ /**
+ * Filters the email address to send from.
+ *
+ * @since 2.2.0
+ *
+ * @param string $from_email Email address to send from.
+ */
+ $from_email = apply_filters( 'wp_mail_from', $from_email );
+
+ /**
+ * Filters the name to associate with the "from" email address.
+ *
+ * @since 2.3.0
+ *
+ * @param string $from_name Name associated with the "from" email address.
+ */
+ $from_name = apply_filters( 'wp_mail_from_name', $from_name );
+ //force from address if checked
+ if(isset($options['force_from_address']) && !empty($options['force_from_address'])){
+ $from_name = $options['from_name'];
+ $from_email = $options['from_email'];
+ }
+ try {
+ $phpmailer->setFrom( $from_email, $from_name, false );
+ } catch ( PHPMailer\PHPMailer\Exception $e ) {
+ $mail_error_data = compact( 'to', 'subject', 'message', 'headers', 'attachments' );
+ $mail_error_data['phpmailer_exception_code'] = $e->getCode();
+
+ /** This filter is documented in wp-includes/pluggable.php */
+ do_action( 'wp_mail_failed', new WP_Error( 'wp_mail_failed', $e->getMessage(), $mail_error_data ) );
+
+ return false;
+ }
+ /*reply_to code */
+ $smtpmailer_reply_to = '';
+ $smtpmailer_reply_to = apply_filters('smtpmailer_reply_to', $smtpmailer_reply_to);
+ if(isset($smtpmailer_reply_to) && !empty($smtpmailer_reply_to)){
+ $temp_reply_to_addresses = explode(",", $smtpmailer_reply_to);
+ $reply_to = array();
+ foreach($temp_reply_to_addresses as $temp_reply_to_address){
+ $reply_to_address = trim($temp_reply_to_address);
+ $reply_to[] = $reply_to_address;
+ }
+ }
+ /*end of reply_to code */
+ // Set mail's subject and body.
+ $phpmailer->Subject = $subject;
+ $phpmailer->Body = $message;
+
+ // Set destination addresses, using appropriate methods for handling addresses.
+ $address_headers = compact( 'to', 'cc', 'bcc', 'reply_to' );
+
+ foreach ( $address_headers as $address_header => $addresses ) {
+ if ( empty( $addresses ) ) {
+ continue;
+ }
+
+ foreach ( (array) $addresses as $address ) {
+ try {
+ // Break $recipient into name and address parts if in the format "Foo ".
+ $recipient_name = '';
+
+ if ( preg_match( '/(.*)<(.+)>/', $address, $matches ) ) {
+ if ( count( $matches ) === 3 ) {
+ $recipient_name = $matches[1];
+ $address = $matches[2];
+ }
+ }
+
+ switch ( $address_header ) {
+ case 'to':
+ $phpmailer->addAddress( $address, $recipient_name );
+ break;
+ case 'cc':
+ $phpmailer->addCc( $address, $recipient_name );
+ break;
+ case 'bcc':
+ $phpmailer->addBcc( $address, $recipient_name );
+ break;
+ case 'reply_to':
+ $phpmailer->addReplyTo( $address, $recipient_name );
+ break;
+ }
+ } catch ( PHPMailer\PHPMailer\Exception $e ) {
+ continue;
+ }
+ }
+ }
+
+ // Tell PHPMailer to use SMTP
+ $phpmailer->isSMTP(); //$phpmailer->isMail();
+ // Set the hostname of the mail server
+ $phpmailer->Host = $options['smtp_host'];
+ // Whether to use SMTP authentication
+ if(isset($options['smtp_auth']) && $options['smtp_auth'] == "true"){
+ $phpmailer->SMTPAuth = true;
+ // SMTP username
+ $phpmailer->Username = $options['smtp_username'];
+ // SMTP password
+ $phpmailer->Password = base64_decode($options['smtp_password']);
+ }
+ // Whether to use encryption
+ $type_of_encryption = $options['type_of_encryption'];
+ if($type_of_encryption=="none"){
+ $type_of_encryption = '';
+ }
+ $phpmailer->SMTPSecure = $type_of_encryption;
+ // SMTP port
+ $phpmailer->Port = $options['smtp_port'];
+
+ // Whether to enable TLS encryption automatically if a server supports it
+ $phpmailer->SMTPAutoTLS = false;
+ //enable debug when sending a test mail
+ if(isset($_POST['smtp_mailer_send_test_email'])){
+ $phpmailer->SMTPDebug = 4;
+ // Ask for HTML-friendly debug output
+ $phpmailer->Debugoutput = 'html';
+ }
+
+ //disable ssl certificate verification if checked
+ if(isset($options['disable_ssl_verification']) && !empty($options['disable_ssl_verification'])){
+ $phpmailer->SMTPOptions = array(
+ 'ssl' => array(
+ 'verify_peer' => false,
+ 'verify_peer_name' => false,
+ 'allow_self_signed' => true
+ )
+ );
+ }
+ // Set Content-Type and charset.
+
+ // If we don't have a Content-Type from the input headers.
+ if ( ! isset( $content_type ) ) {
+ $content_type = 'text/plain';
+ }
+
+ /**
+ * Filters the wp_mail() content type.
+ *
+ * @since 2.3.0
+ *
+ * @param string $content_type Default wp_mail() content type.
+ */
+ $content_type = apply_filters( 'wp_mail_content_type', $content_type );
+
+ $phpmailer->ContentType = $content_type;
+
+ // Set whether it's plaintext, depending on $content_type.
+ if ( 'text/html' === $content_type ) {
+ $phpmailer->isHTML( true );
+ }
+
+ // If we don't have a charset from the input headers.
+ if ( ! isset( $charset ) ) {
+ $charset = get_bloginfo( 'charset' );
+ }
+
+ /**
+ * Filters the default wp_mail() charset.
+ *
+ * @since 2.3.0
+ *
+ * @param string $charset Default email charset.
+ */
+ $phpmailer->CharSet = apply_filters( 'wp_mail_charset', $charset );
+
+ // Set custom headers.
+ if ( ! empty( $headers ) ) {
+ foreach ( (array) $headers as $name => $content ) {
+ // Only add custom headers not added automatically by PHPMailer.
+ if ( ! in_array( $name, array( 'MIME-Version', 'X-Mailer' ), true ) ) {
+ try {
+ $phpmailer->addCustomHeader( sprintf( '%1$s: %2$s', $name, $content ) );
+ } catch ( PHPMailer\PHPMailer\Exception $e ) {
+ continue;
+ }
+ }
+ }
+
+ if ( false !== stripos( $content_type, 'multipart' ) && ! empty( $boundary ) ) {
+ $phpmailer->addCustomHeader( sprintf( 'Content-Type: %s; boundary="%s"', $content_type, $boundary ) );
+ }
+ }
+
+ if ( isset( $attachments ) && ! empty( $attachments ) ) {
+ foreach ( $attachments as $filename => $attachment ) {
+ $filename = is_string( $filename ) ? $filename : '';
+
+ try {
+ $phpmailer->addAttachment( $attachment, $filename );
+ } catch ( PHPMailer\PHPMailer\Exception $e ) {
+ continue;
+ }
+ }
+ }
+
+ /**
+ * Fires after PHPMailer is initialized.
+ *
+ * @since 2.2.0
+ *
+ * @param PHPMailer $phpmailer The PHPMailer instance (passed by reference).
+ */
+ do_action_ref_array( 'phpmailer_init', array( &$phpmailer ) );
+
+ $mail_data = compact( 'to', 'subject', 'message', 'headers', 'attachments' );
+
+ // Send!
+ try {
+ $send = $phpmailer->send();
+
+ /**
+ * Fires after PHPMailer has successfully sent an email.
+ *
+ * The firing of this action does not necessarily mean that the recipient(s) received the
+ * email successfully. It only means that the `send` method above was able to
+ * process the request without any errors.
+ *
+ * @since 5.9.0
+ *
+ * @param array $mail_data {
+ * An array containing the email recipient(s), subject, message, headers, and attachments.
+ *
+ * @type string[] $to Email addresses to send message.
+ * @type string $subject Email subject.
+ * @type string $message Message contents.
+ * @type string[] $headers Additional headers.
+ * @type string[] $attachments Paths to files to attach.
+ * }
+ */
+ do_action( 'wp_mail_succeeded', $mail_data );
+
+ return $send;
+ } catch ( PHPMailer\PHPMailer\Exception $e ) {
+ $mail_data['phpmailer_exception_code'] = $e->getCode();
+
+ /**
+ * Fires after a PHPMailer\PHPMailer\Exception is caught.
+ *
+ * @since 4.4.0
+ *
+ * @param WP_Error $error A WP_Error object with the PHPMailer\PHPMailer\Exception message, and an array
+ * containing the mail recipient, subject, message, headers, and attachments.
+ */
+ do_action( 'wp_mail_failed', new WP_Error( 'wp_mail_failed', $e->getMessage(), $mail_data ) );
+
+ return false;
+ }
+}
diff --git a/wp-content/upgrade-temp-backup/plugins/smtp-mailer/readme.txt b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/readme.txt
new file mode 100644
index 00000000..9e83612f
--- /dev/null
+++ b/wp-content/upgrade-temp-backup/plugins/smtp-mailer/readme.txt
@@ -0,0 +1,151 @@
+=== SMTP Mailer ===
+Contributors: naa986
+Donate link: https://wphowto.net/
+Tags: email, mail, smtp, phpmailer
+Requires at least: 6.5
+Tested up to: 6.5
+Stable tag: 1.1.15
+License: GPLv2 or later
+License URI: http://www.gnu.org/licenses/gpl-2.0.html
+
+Configure a SMTP server to send email from your WordPress site. Configure the wp_mail() function to use SMTP instead of the PHP mail() function.
+
+== Description ==
+
+[SMTP Mailer](https://wphowto.net/smtp-mailer-plugin-for-wordpress-1482) plugin allows you to configure a mail server which handles all outgoing email from your website. It takes control of the wp_mail function and use SMTP instead.
+
+https://www.youtube.com/watch?v=7O_jgtykcEk&rel=0
+
+=== SMTP Mailer Add-ons ===
+
+* [Reply-To](https://wphowto.net/how-to-add-a-reply-to-address-in-the-smtp-mailer-wordpress-plugin-6997)
+* [Email Logger](https://wphowto.net/smtp-mailer-email-logger-7066)
+
+=== SMTP Mailer Settings ===
+
+* **SMTP Host**: Your outgoing mail server (e.g. smtp.gmail.com).
+* **SMTP Authentication**: Whether to use SMTP authentication when sending an email (True/False). If you choose to authenticate you will also need to provide your username and password.
+* **SMTP Username**: The username to connect to your SMTP server.
+* **SMTP Password**: The password to connect to your SMTP server.
+* **Type of Encryption**: The encryption to be used when sending an email (TLS/SSL/No Encryption. TLS is recommended).
+* **SMTP Port**: The port to be used when sending an email (587/465/25). If you choose TLS the port should be set to 587. For SSL use port 465 instead.
+* **From Email Address**: The email address to be used as the From Address when sending an email.
+* **From Name**: The name to be used as the From Name when sending an email.
+
+=== SMTP Mailer Test Email ===
+
+Once you have configured the settings you can send a test email to check the functionality of the plugin.
+
+* **To**: Email address of the recipient.
+* **Subject**: Subject of the email.
+* **Message**: Email body.
+
+=== Known Compatibility ===
+
+SMTP Mailer should work with any plugin that uses the WordPress Mail function. However, It has been tested with the following form and contact form plugins:
+
+* Contact Form 7
+* Jetpack Contact Form
+* Visual Form Builder
+* Fast Secure Contact Form
+* Formidable Forms
+* Contact Form by BestWebSoft
+
+For detailed setup instructions please visit the [SMTP Mailer](https://wphowto.net/smtp-mailer-plugin-for-wordpress-1482) plugin page.
+
+== Installation ==
+
+1. Go to the Add New plugins screen in your WordPress Dashboard
+1. Click the upload tab
+1. Browse for the plugin file (smtp-mailer.zip) on your computer
+1. Click "Install Now" and then hit the activate button
+
+== Frequently Asked Questions ==
+none
+
+== Screenshots ==
+
+1. SMTP Mailer Settings
+2. SMTP Mailer Test Email Tab
+
+== Upgrade Notice ==
+none
+
+== Changelog ==
+
+= 1.1.15 =
+* Updated the code for sanitizing password.
+
+= 1.1.14 =
+* Added support for the email logger add-on.
+
+= 1.1.13 =
+* WordPress 6.5 compatibility update.
+
+= 1.1.12 =
+* Added support for the reply-to add-on.
+
+= 1.1.11 =
+* WordPress 6.4 compatibility update.
+
+= 1.1.10 =
+* Added an option to set the configured from address for all outgoing email messages.
+
+= 1.1.9 =
+* Additional check for the settings link.
+
+= 1.1.8 =
+* Removed admin notices to avoid confusion since configurations can vary on different servers.
+
+= 1.1.7 =
+* WordPress 6.3 compatibility update.
+
+= 1.1.6 =
+* WordPress 6.2 compatibility update.
+
+= 1.1.5 =
+* Compatibility update for WordPress 6.1.
+
+= 1.1.4 =
+* Updated the mail function for WordPress 6.0.
+
+= 1.1.3 =
+* Updated the mail function for WordPress 5.9.
+
+= 1.1.2 =
+* Fixed an issue that could cause an Undefined variable error if $attachments was not set.
+
+= 1.1.1 =
+* WordPress 5.7 compatibility update.
+
+= 1.1.0 =
+* The password field can be left empty when updating the settings.
+
+= 1.0.9 =
+* Updated the code to be compatible with WordPress 5.5.
+
+= 1.0.8 =
+* SMTP Mailer is compatible with WordPress 5.3.
+
+= 1.0.7 =
+* SMTP Mailer now checks for a valid nonce when sending a test email.
+
+= 1.0.6 =
+* SMTP Mailer no longer shows the saved password in the settings.
+
+= 1.0.5 =
+* SMTP Mailer is now compatible with WordPress 4.9.
+
+= 1.0.4 =
+* Updated the mail() function by setting its minimum requirements to WordPress 4.8.
+* "phpmailer_init" action hook is now enabled so it can be used by other plugins.
+
+= 1.0.3 =
+* Fixed a bug where an apostrophe in the password would cause SMTP authentication failure.
+
+= 1.0.2 =
+* SMTP Mailer now supports the "wp_mail_failed" hook which fires after a phpmailerException is caught.
+* Added a new option to bypass this error on some servers where the SSL certificate is not properly configured - Warning: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed.
+
+= 1.0.1 =
+* First commit