Version Description
- 2022-10-10 =
- FIXES
- Avoid redirection to wizard on activation
- Issue in resend emails
- Made backend setting fields visible
- IMPROVEMENTS
- Email host message
- Sendgrid message id to prevent spam emails
Download this release
Release Info
Developer | wpexpertsio |
Plugin | Post SMTP Mailer/Email Log |
Version | 2.1.10 |
Comparing to | |
See all releases |
Code changes from version 2.1.9 to 2.1.10
Postman/Postman-Email-Log/PostmanEmailLogView.php
CHANGED
@@ -112,7 +112,9 @@ class PostmanEmailLogView extends WP_List_Table {
|
|
112 |
if ( ! (empty( $meta_values ['original_to'] [0] ) && empty( $meta_values ['originalHeaders'] [0] )) ) {
|
113 |
// $actions ['resend'] = sprintf ( '<a href="%s">%s</a>', $resendUrl, __ ( 'Resend', 'post-smtp' ) );
|
114 |
$emails = $meta_values ['original_to'] [0];
|
115 |
-
|
|
|
|
|
116 |
|
117 |
$actions ['resend'] = sprintf( '<span id="%3$s"><a class="postman-open-resend" href="#">%2$s</a></span><div style="display:none;"><input type="hidden" name="security" value="%6$s"><input type="text" name="mail_to" class="regular-text ltr" data-id="%1$s" value="%4$s"><button class="postman-resend button button-primary">%2$s</button><i style="color: black;">%5$s</i></div>', $item ['ID'], __( 'Resend', 'post-smtp' ), 'resend-' . $item ['ID'], esc_attr( $to ), __( 'comma-separated for multiple emails', 'post-smtp' ), wp_create_nonce( 'resend' ) );
|
118 |
} else {
|
112 |
if ( ! (empty( $meta_values ['original_to'] [0] ) && empty( $meta_values ['originalHeaders'] [0] )) ) {
|
113 |
// $actions ['resend'] = sprintf ( '<a href="%s">%s</a>', $resendUrl, __ ( 'Resend', 'post-smtp' ) );
|
114 |
$emails = $meta_values ['original_to'] [0];
|
115 |
+
$to = !is_array( $emails ) ? explode( ',', $emails ) : $emails;
|
116 |
+
$to = array_map( 'sanitize_email', $to );
|
117 |
+
$to = implode( ',', $to );
|
118 |
|
119 |
$actions ['resend'] = sprintf( '<span id="%3$s"><a class="postman-open-resend" href="#">%2$s</a></span><div style="display:none;"><input type="hidden" name="security" value="%6$s"><input type="text" name="mail_to" class="regular-text ltr" data-id="%1$s" value="%4$s"><button class="postman-resend button button-primary">%2$s</button><i style="color: black;">%5$s</i></div>', $item ['ID'], __( 'Resend', 'post-smtp' ), 'resend-' . $item ['ID'], esc_attr( $to ), __( 'comma-separated for multiple emails', 'post-smtp' ), wp_create_nonce( 'resend' ) );
|
120 |
} else {
|
Postman/Postman-Mail/PostmanSendGridMailEngine.php
CHANGED
@@ -136,7 +136,7 @@ if ( ! class_exists( 'PostmanSendGridMailEngine' ) ) {
|
|
136 |
$email->addBccs($bccEmails);
|
137 |
|
138 |
// add the messageId
|
139 |
-
$messageId = $message->getMessageId();
|
140 |
if ( ! empty( $messageId ) ) {
|
141 |
$email->addHeader( 'message-id', $messageId );
|
142 |
}
|
136 |
$email->addBccs($bccEmails);
|
137 |
|
138 |
// add the messageId
|
139 |
+
$messageId = '<' . $message->getMessageId() . '>';
|
140 |
if ( ! empty( $messageId ) ) {
|
141 |
$email->addHeader( 'message-id', $messageId );
|
142 |
}
|
Postman/Postman-Mail/PostmanSmtpModuleTransport.php
CHANGED
@@ -410,7 +410,7 @@ class PostmanSmtpModuleTransport extends PostmanAbstractZendModuleTransport impl
|
|
410 |
* Get the settings option array and print one of its values
|
411 |
*/
|
412 |
public function hostname_callback() {
|
413 |
-
printf( '<input type="text" id="input_hostname" name="postman_options[hostname]"
|
414 |
}
|
415 |
|
416 |
/**
|
@@ -460,7 +460,7 @@ class PostmanSmtpModuleTransport extends PostmanAbstractZendModuleTransport impl
|
|
460 |
$inputValue = (null !== $this->options->getUsername() ? esc_attr( $this->options->getUsername() ) : '');
|
461 |
$inputDescription = __( 'The Username is usually the same as the Envelope-From Email Address.', 'post-smtp' );
|
462 |
print ('<input tabindex="99" id="fake_user_name" name="fake_user[name]" style="position:absolute; top:-500px;" type="text" value="Safari Autofill Me">') ;
|
463 |
-
printf( '<input type="text" id="input_basic_auth_username" name="postman_options[basic_auth_username]" value="%s" size="40" class="required ps-
|
464 |
}
|
465 |
|
466 |
/**
|
@@ -468,7 +468,7 @@ class PostmanSmtpModuleTransport extends PostmanAbstractZendModuleTransport impl
|
|
468 |
*/
|
469 |
public function basic_auth_password_callback() {
|
470 |
print ('<input tabindex="99" id="fake_password" name="fake[password]" style="position:absolute; top:-500px;" type="password" class="ps-input ps-w-75" value="Safari Autofill Me">') ;
|
471 |
-
printf( '<input type="password" id="input_basic_auth_password" name="postman_options[basic_auth_password]" value="%s" size="40" class="required ps-
|
472 |
print ' <input type="button" id="togglePasswordField" value="Show Password" class="button button-secondary" style="visibility:hidden" />';
|
473 |
}
|
474 |
|
@@ -476,14 +476,14 @@ class PostmanSmtpModuleTransport extends PostmanAbstractZendModuleTransport impl
|
|
476 |
* Get the settings option array and print one of its values
|
477 |
*/
|
478 |
public function oauth_client_id_callback() {
|
479 |
-
printf( '<input type="text" onClick="this.setSelectionRange(0, this.value.length)" id="oauth_client_id" name="postman_options[oauth_client_id]" value="%s" size="60" class="required ps-
|
480 |
}
|
481 |
|
482 |
/**
|
483 |
* Get the settings option array and print one of its values
|
484 |
*/
|
485 |
public function oauth_client_secret_callback() {
|
486 |
-
printf( '<input type="text" onClick="this.setSelectionRange(0, this.value.length)" autocomplete="off" id="oauth_client_secret" name="postman_options[oauth_client_secret]" value="%s" size="60" class="required ps-
|
487 |
}
|
488 |
|
489 |
/**
|
@@ -541,6 +541,7 @@ class PostmanSmtpModuleTransport extends PostmanAbstractZendModuleTransport impl
|
|
541 |
*/
|
542 |
public function printWizardMailServerHostnameStep() {
|
543 |
printf( '<legend>%s</legend>', _x( 'Which host will relay the mail?', 'Wizard Step Title', 'post-smtp' ) );
|
|
|
544 |
printf( '<p>%s</p>', __( 'This is the Outgoing (SMTP) Mail Server, or Mail Submission Agent (MSA), which Postman delegates mail delivery to. This server is specific to your email account, and if you don\'t know what to use, ask your email service provider.', 'post-smtp' ) );
|
545 |
printf( '<p><label>%s<label></p>', __( 'Note that many WordPress hosts, such as GoDaddy, Bluehost and Dreamhost, require that you use their mail accounts with their mail servers, and prevent you from using others.', 'post-smtp' ) );
|
546 |
|
@@ -555,7 +556,8 @@ class PostmanSmtpModuleTransport extends PostmanAbstractZendModuleTransport impl
|
|
555 |
printf( '<p id="godaddy_block"><span style="background-color:yellow"><b>%s</b>: %s</span></p>', $warning, $nonGodaddyDomainMessage );
|
556 |
/* Translators: Where (%1$s) is the SPF-info URL and (%2$s) is the name of the web host */
|
557 |
$godaddyCustomDomainMessage = sprintf( __( 'If you own this domain, make sure it has an <a href="%1$s">SPF record authorizing %2$s</a> as a relay, or you will have delivery problems.', 'post-smtp' ), 'http://www.mail-tester.com/spf/godaddy', 'GoDaddy' );
|
558 |
-
|
|
|
559 |
}
|
560 |
|
561 |
/**
|
410 |
* Get the settings option array and print one of its values
|
411 |
*/
|
412 |
public function hostname_callback() {
|
413 |
+
printf( '<input type="text" id="input_hostname" name="postman_options[hostname]" value="%s" size="40" class="required" placeholder="%s"/>', null !== $this->options->getHostname() ? esc_attr( $this->options->getHostname() ) : '', __( 'Required', 'post-smtp' ) );
|
414 |
}
|
415 |
|
416 |
/**
|
460 |
$inputValue = (null !== $this->options->getUsername() ? esc_attr( $this->options->getUsername() ) : '');
|
461 |
$inputDescription = __( 'The Username is usually the same as the Envelope-From Email Address.', 'post-smtp' );
|
462 |
print ('<input tabindex="99" id="fake_user_name" name="fake_user[name]" style="position:absolute; top:-500px;" type="text" value="Safari Autofill Me">') ;
|
463 |
+
printf( '<input type="text" id="input_basic_auth_username" name="postman_options[basic_auth_username]" value="%s" size="40" class="required ps-w-75" placeholder="%s"/><br/><span class="postman_input_description ps-input ps-w-75">%s</span>', $inputValue, __( 'Required', 'post-smtp' ), $inputDescription );
|
464 |
}
|
465 |
|
466 |
/**
|
468 |
*/
|
469 |
public function basic_auth_password_callback() {
|
470 |
print ('<input tabindex="99" id="fake_password" name="fake[password]" style="position:absolute; top:-500px;" type="password" class="ps-input ps-w-75" value="Safari Autofill Me">') ;
|
471 |
+
printf( '<input type="password" id="input_basic_auth_password" name="postman_options[basic_auth_password]" value="%s" size="40" class="required ps-w-75" placeholder="%s"/>', null !== $this->options->getPassword() ? esc_attr( PostmanUtils::obfuscatePassword( $this->options->getPassword() ) ) : '', __( 'Required', 'post-smtp' ) );
|
472 |
print ' <input type="button" id="togglePasswordField" value="Show Password" class="button button-secondary" style="visibility:hidden" />';
|
473 |
}
|
474 |
|
476 |
* Get the settings option array and print one of its values
|
477 |
*/
|
478 |
public function oauth_client_id_callback() {
|
479 |
+
printf( '<input type="text" onClick="this.setSelectionRange(0, this.value.length)" id="oauth_client_id" name="postman_options[oauth_client_id]" value="%s" size="60" class="required ps-w-75" placeholder="%s"/>', null !== $this->options->getClientId() ? esc_attr( $this->options->getClientId() ) : '', __( 'Required', 'post-smtp' ) );
|
480 |
}
|
481 |
|
482 |
/**
|
483 |
* Get the settings option array and print one of its values
|
484 |
*/
|
485 |
public function oauth_client_secret_callback() {
|
486 |
+
printf( '<input type="text" onClick="this.setSelectionRange(0, this.value.length)" autocomplete="off" id="oauth_client_secret" name="postman_options[oauth_client_secret]" value="%s" size="60" class="required ps-w-75" placeholder="%s"/>', null !== $this->options->getClientSecret() ? esc_attr( $this->options->getClientSecret() ) : '', __( 'Required', 'post-smtp' ) );
|
487 |
}
|
488 |
|
489 |
/**
|
541 |
*/
|
542 |
public function printWizardMailServerHostnameStep() {
|
543 |
printf( '<legend>%s</legend>', _x( 'Which host will relay the mail?', 'Wizard Step Title', 'post-smtp' ) );
|
544 |
+
printf( '<p><label>%s</label></p>', __( 'If you want to use SendinBlue, Mandrill, Mailgun, SendGrid or other (API), You can skip this step by pressing next.', 'post-smtp' ) );
|
545 |
printf( '<p>%s</p>', __( 'This is the Outgoing (SMTP) Mail Server, or Mail Submission Agent (MSA), which Postman delegates mail delivery to. This server is specific to your email account, and if you don\'t know what to use, ask your email service provider.', 'post-smtp' ) );
|
546 |
printf( '<p><label>%s<label></p>', __( 'Note that many WordPress hosts, such as GoDaddy, Bluehost and Dreamhost, require that you use their mail accounts with their mail servers, and prevent you from using others.', 'post-smtp' ) );
|
547 |
|
556 |
printf( '<p id="godaddy_block"><span style="background-color:yellow"><b>%s</b>: %s</span></p>', $warning, $nonGodaddyDomainMessage );
|
557 |
/* Translators: Where (%1$s) is the SPF-info URL and (%2$s) is the name of the web host */
|
558 |
$godaddyCustomDomainMessage = sprintf( __( 'If you own this domain, make sure it has an <a href="%1$s">SPF record authorizing %2$s</a> as a relay, or you will have delivery problems.', 'post-smtp' ), 'http://www.mail-tester.com/spf/godaddy', 'GoDaddy' );
|
559 |
+
$godaddy_note = __( 'Note: You may have delivery problems if you continue using the default outgoing mail server hostname.', 'post-smtp' );
|
560 |
+
printf( '<div id="godaddy_spf_required"><p><span style="background-color:yellow"><b>%s</b>: %s</span></p><p class="ps-default-host-name"><label>%s<label></p></div>', $warning, $godaddyCustomDomainMessage, $godaddy_note );
|
561 |
}
|
562 |
|
563 |
/**
|
Postman/PostmanViewController.php
CHANGED
@@ -441,7 +441,7 @@ if ( ! class_exists( 'PostmanViewController' ) ) {
|
|
441 |
</a>
|
442 |
</div>
|
443 |
<div>
|
444 |
-
<a href="<?php echo esc_url( 'https://
|
445 |
<img src="<?php echo esc_url( POST_SMTP_ASSETS . 'images/icons/finger.png' ) ?>" width="15" />
|
446 |
<?php echo esc_html( 'Online Support' ); ?>
|
447 |
</a>
|
441 |
</a>
|
442 |
</div>
|
443 |
<div>
|
444 |
+
<a href="<?php echo esc_url( 'https://postmansmtp.com/forums/' ); ?>" target="_blank">
|
445 |
<img src="<?php echo esc_url( POST_SMTP_ASSETS . 'images/icons/finger.png' ) ?>" width="15" />
|
446 |
<?php echo esc_html( 'Online Support' ); ?>
|
447 |
</a>
|
postman-smtp.php
CHANGED
@@ -6,7 +6,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
6 |
* Plugin Name: Post SMTP
|
7 |
* Plugin URI: https://wordpress.org/plugins/post-smtp/
|
8 |
* Description: Email not reliable? Post SMTP is the first and only WordPress SMTP plugin to implement OAuth 2.0 for Gmail, Hotmail and Yahoo Mail. Setup is a breeze with the Configuration Wizard and integrated Port Tester. Enjoy worry-free delivery even if your password changes!
|
9 |
-
* Version: 2.1.
|
10 |
* Author: Post SMTP
|
11 |
* Text Domain: post-smtp
|
12 |
* Author URI: https://postmansmtp.com
|
@@ -54,7 +54,7 @@ if ( ! function_exists( 'ps_fs' ) ) {
|
|
54 |
'has_paid_plans' => true,
|
55 |
'menu' => array(
|
56 |
'slug' => 'postman',
|
57 |
-
'first-path' => 'admin.php?page=postman
|
58 |
'account' => false,
|
59 |
),
|
60 |
) );
|
@@ -76,7 +76,7 @@ if ( ! function_exists( 'ps_fs' ) ) {
|
|
76 |
define( 'POST_SMTP_BASE', __FILE__ );
|
77 |
define( 'POST_SMTP_PATH', __DIR__ );
|
78 |
define( 'POST_SMTP_URL', plugins_url('', POST_SMTP_BASE ) );
|
79 |
-
define( 'POST_SMTP_VER', '2.1.
|
80 |
define( 'POST_SMTP_ASSETS', plugin_dir_url( __FILE__ ) . 'assets/' );
|
81 |
|
82 |
$postman_smtp_exist = in_array( 'postman-smtp/postman-smtp.php', (array) get_option( 'active_plugins', array() ) );
|
6 |
* Plugin Name: Post SMTP
|
7 |
* Plugin URI: https://wordpress.org/plugins/post-smtp/
|
8 |
* Description: Email not reliable? Post SMTP is the first and only WordPress SMTP plugin to implement OAuth 2.0 for Gmail, Hotmail and Yahoo Mail. Setup is a breeze with the Configuration Wizard and integrated Port Tester. Enjoy worry-free delivery even if your password changes!
|
9 |
+
* Version: 2.1.10
|
10 |
* Author: Post SMTP
|
11 |
* Text Domain: post-smtp
|
12 |
* Author URI: https://postmansmtp.com
|
54 |
'has_paid_plans' => true,
|
55 |
'menu' => array(
|
56 |
'slug' => 'postman',
|
57 |
+
'first-path' => 'admin.php?page=postman',
|
58 |
'account' => false,
|
59 |
),
|
60 |
) );
|
76 |
define( 'POST_SMTP_BASE', __FILE__ );
|
77 |
define( 'POST_SMTP_PATH', __DIR__ );
|
78 |
define( 'POST_SMTP_URL', plugins_url('', POST_SMTP_BASE ) );
|
79 |
+
define( 'POST_SMTP_VER', '2.1.10' );
|
80 |
define( 'POST_SMTP_ASSETS', plugin_dir_url( __FILE__ ) . 'assets/' );
|
81 |
|
82 |
$postman_smtp_exist = in_array( 'postman-smtp/postman-smtp.php', (array) get_option( 'active_plugins', array() ) );
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Contributors: wpexpertsio
|
|
4 |
Tags: email, mail, smtp, wordpress smtp, email log, postman smtp, postman, gmail, google apps, hotmail, yahoo, mandrill api, sendgrid api, elastic email, office365, mailgun
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 6.0.2
|
7 |
-
Stable tag: 2.1.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -290,6 +290,15 @@ To avoid being flagged as spam, you need to prove your email isn't forged. On a
|
|
290 |
|
291 |
== Changelog ==
|
292 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
293 |
= 2.1.9 - 2022-09-9 =
|
294 |
* **FIX**
|
295 |
* User Compatibility Fix
|
4 |
Tags: email, mail, smtp, wordpress smtp, email log, postman smtp, postman, gmail, google apps, hotmail, yahoo, mandrill api, sendgrid api, elastic email, office365, mailgun
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 6.0.2
|
7 |
+
Stable tag: 2.1.10
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
290 |
|
291 |
== Changelog ==
|
292 |
|
293 |
+
= 2.1.10 - 2022-10-10 =
|
294 |
+
* **FIXES**
|
295 |
+
* Avoid redirection to wizard on activation
|
296 |
+
* Issue in resend emails
|
297 |
+
* Made backend setting fields visible
|
298 |
+
* **IMPROVEMENTS**
|
299 |
+
* Email host message
|
300 |
+
* Sendgrid message id to prevent spam emails
|
301 |
+
|
302 |
= 2.1.9 - 2022-09-9 =
|
303 |
* **FIX**
|
304 |
* User Compatibility Fix
|