Post SMTP Mailer/Email Log - Version 2.0.19

Version Description

  • 2020-01-19
  • Fixed: All reported office 365 issues.
  • New: Add link to Amazon SES Extension
Download this release

Release Info

Developer yehudah
Plugin Icon 128x128 Post SMTP Mailer/Email Log
Version 2.0.19
Comparing to
See all releases

Code changes from version 2.0.18 to 2.0.19

Postman/Extensions/Core/StatusSolution.php CHANGED
@@ -35,7 +35,11 @@ class StatusSolution {
35
  $possible_solution[] = 'Two factor authentication is enabled, replace your password with app password.';
36
  $possible_solution[] = $this->make_clickable( 'https://support.google.com/mail/?p=InvalidSecondFactor' );
37
  } elseif ( $this->strExists( 'Username and Password not accepted' ) || $this->strExists( 'Authentication unsuccessful' ) ) {
38
- $possible_solution[] = 'Check you credentials, wrong email or password.';
 
 
 
 
39
  } else {
40
  $possible_solution[] = 'Not found, check status column for more info.';
41
  }
@@ -53,4 +57,4 @@ class StatusSolution {
53
 
54
  }
55
 
56
- new StatusSolution();
35
  $possible_solution[] = 'Two factor authentication is enabled, replace your password with app password.';
36
  $possible_solution[] = $this->make_clickable( 'https://support.google.com/mail/?p=InvalidSecondFactor' );
37
  } elseif ( $this->strExists( 'Username and Password not accepted' ) || $this->strExists( 'Authentication unsuccessful' ) ) {
38
+ $possible_solution[] = 'Check you credentials, wrong email or password.';
39
+ } elseif ( $this->strExists( 'ErrorSendAsDenied' ) ) {
40
+ $possible_solution[] = 'Give the configured account "Send As" permissions on the "From" mailbox (admin.office365.com).';
41
+ } elseif ( $this->strExists( 'ErrorParticipantDoesntHaveAnEmailAddress' ) ) {
42
+ $possible_solution[] = "Probably office 365 doesn't like shared mailbox in Reply-To field";
43
  } else {
44
  $possible_solution[] = 'Not found, check status column for more info.';
45
  }
57
 
58
  }
59
 
60
+ new StatusSolution();
Postman/Extensions/License/PostmanLicenseHandler.php CHANGED
@@ -248,9 +248,10 @@ class PostmanLicenseHandler {
248
  update_option( $this->item_shortname . '_license_active', $this->license_data );
249
  update_option( $this->item_shortname . '_license_key', $license );
250
 
251
- $slug = plugin_basename($this->file);
252
- PostmanLicenseManager::get_instance()->add_extension($slug);
253
-
 
254
  }
255
 
256
 
@@ -327,16 +328,23 @@ class PostmanLicenseHandler {
327
  }
328
 
329
  $license_data = $this->license_data;
 
330
 
331
  $datetime1 = new DateTime();
332
- $datetime2 = new DateTime( $license_data->expires );
 
 
 
 
 
 
333
 
334
  foreach ( self::DAYS_TO_ALERT as $day_to_alert ) {
335
 
336
  $interval = $datetime1->diff($datetime2);
337
  if( $interval->days == $day_to_alert ){
338
  add_action( 'admin_notices', function () use ( $day_to_alert, $license_data ) {
339
- echo $this->item_name . ' is about to expire in ' . $day_to_alert . ' days: ' . $license_data->expires;
340
  });
341
 
342
  return;
248
  update_option( $this->item_shortname . '_license_active', $this->license_data );
249
  update_option( $this->item_shortname . '_license_key', $license );
250
 
251
+ if ( $this->license_data->success && $this->license_data->license == 'valid' ) {
252
+ $slug = plugin_basename($this->file);
253
+ PostmanLicenseManager::get_instance()->add_extension($slug);
254
+ }
255
  }
256
 
257
 
328
  }
329
 
330
  $license_data = $this->license_data;
331
+ $expires = $license_data->expires == 'lifetime' ? '2500/12/12' : $license_data->expires;
332
 
333
  $datetime1 = new DateTime();
334
+
335
+ if ( is_numeric( $expires ) ) {
336
+ $datetime2 = new DateTime();
337
+ $datetime2->setTimestamp( $expires );
338
+ } else {
339
+ $datetime2 = new DateTime( $expires );
340
+ }
341
 
342
  foreach ( self::DAYS_TO_ALERT as $day_to_alert ) {
343
 
344
  $interval = $datetime1->diff($datetime2);
345
  if( $interval->days == $day_to_alert ){
346
  add_action( 'admin_notices', function () use ( $day_to_alert, $license_data ) {
347
+ //echo $this->item_name . ' is about to expire in ' . $day_to_alert . ' days: ' . $license_data->expires;
348
  });
349
 
350
  return;
Postman/Extensions/License/PostmanLicenseManager.php CHANGED
@@ -28,8 +28,6 @@ class PostmanLicenseManager {
28
  {
29
  $this->includes();
30
  $this->rand_cache_interval = rand( 1, 24 );
31
-
32
- add_filter( 'extra_plugin_headers', [ $this, 'add_extension_headers' ] );
33
  }
34
 
35
  public function includes() {
@@ -39,14 +37,6 @@ class PostmanLicenseManager {
39
 
40
  }
41
 
42
-
43
- function add_extension_headers($headers) {
44
- $headers[] = 'Class';
45
- $headers[] = 'Slug';
46
-
47
- return $headers;
48
- }
49
-
50
  /**
51
  * Init
52
  */
28
  {
29
  $this->includes();
30
  $this->rand_cache_interval = rand( 1, 24 );
 
 
31
  }
32
 
33
  public function includes() {
37
 
38
  }
39
 
 
 
 
 
 
 
 
 
40
  /**
41
  * Init
42
  */
Postman/Postman.php CHANGED
@@ -146,6 +146,8 @@ class Postman {
146
  'on_plugins_loaded',
147
  ) );
148
 
 
 
149
  /**
150
  * @todo: WPML say they fix the issue in version 3.9
151
  * https://wordpress.org/support/topic/error-in-pluggable-php173/#post-10021301
@@ -178,6 +180,12 @@ class Postman {
178
 
179
  }
180
 
 
 
 
 
 
 
181
 
182
  /**
183
  * Functions to execute on the plugins_loaded event
146
  'on_plugins_loaded',
147
  ) );
148
 
149
+ add_filter( 'extra_plugin_headers', [ $this, 'add_extension_headers' ] );
150
+
151
  /**
152
  * @todo: WPML say they fix the issue in version 3.9
153
  * https://wordpress.org/support/topic/error-in-pluggable-php173/#post-10021301
180
 
181
  }
182
 
183
+ function add_extension_headers($headers) {
184
+ $headers[] = 'Class';
185
+ $headers[] = 'Slug';
186
+
187
+ return $headers;
188
+ }
189
 
190
  /**
191
  * Functions to execute on the plugins_loaded event
Postman/PostmanViewController.php CHANGED
@@ -320,10 +320,11 @@ if ( ! class_exists( 'PostmanViewController' ) ) {
320
  printf( '<h2>%s</h2>', sprintf( __( '%s Setup', 'post-smtp' ), __( 'Post SMTP', 'post-smtp' ) ) );
321
 
322
  if ( ! $show && POST_SMTP_SHOW_RELEASE_MESSAGE ) {
 
323
  echo '
324
  <div class="updated settings-error notice is-dismissible">
325
  <p>
326
- <strong>Version ' . $version . ' ' . POST_SMTP_RELEASE_MESSAGE . ':</strong> <a target="_blank" href="' . POST_SMTP_RELEASE_URL . '">Read Here</a>
327
  </p>
328
  <button style="z-index: 100;" data-version="'. $version . '" data-security="' . wp_create_nonce('postsmtp') .'" type="button" class="notice-dismiss postman-release-message">
329
  <span class="screen-reader-text">Dismiss this notice.</span>
@@ -370,6 +371,9 @@ if ( ! class_exists( 'PostmanViewController' ) ) {
370
  $resetTitle = __( 'Reset Plugin', 'post-smtp' );
371
  $importExportReset = sprintf( '%s/%s/%s', $importTitle, $exportTile, $resetTitle );
372
  printf( $purgeLinkPattern, $this->getPageUrl( PostmanAdminController::MANAGE_OPTIONS_PAGE_SLUG ), sprintf( '%s', $importExportReset ) );
 
 
 
373
  print '</ul>';
374
  print '</div>';
375
  ?>
@@ -378,6 +382,7 @@ if ( ! class_exists( 'PostmanViewController' ) ) {
378
  <h4><img class="align-middle" src="<?php echo plugins_url( 'style/images/new.gif', dirname( __DIR__ ) . '/postman-smtp.php' ); ?>"><a style="color: black;" target="_blank" href="https://postmansmtp.com/extensions/">Extensions</a></h4>
379
  <ul>
380
  <li><a target="_blank" href="https://postmansmtp.com/extensions/office-365-for-post-smtp-extension/">Office 365 API</a></li>
 
381
  </ul>
382
  </div>
383
 
320
  printf( '<h2>%s</h2>', sprintf( __( '%s Setup', 'post-smtp' ), __( 'Post SMTP', 'post-smtp' ) ) );
321
 
322
  if ( ! $show && POST_SMTP_SHOW_RELEASE_MESSAGE ) {
323
+ $linkText = POST_SMTP_RELEASE_URL == '#' ? '' : '<a target="_blank" href="' . POST_SMTP_RELEASE_URL . '">Read Here</a>';
324
  echo '
325
  <div class="updated settings-error notice is-dismissible">
326
  <p>
327
+ <strong>Version ' . $version . ' ' . POST_SMTP_RELEASE_MESSAGE . ':</strong> ' . $linkText . '
328
  </p>
329
  <button style="z-index: 100;" data-version="'. $version . '" data-security="' . wp_create_nonce('postsmtp') .'" type="button" class="notice-dismiss postman-release-message">
330
  <span class="screen-reader-text">Dismiss this notice.</span>
371
  $resetTitle = __( 'Reset Plugin', 'post-smtp' );
372
  $importExportReset = sprintf( '%s/%s/%s', $importTitle, $exportTile, $resetTitle );
373
  printf( $purgeLinkPattern, $this->getPageUrl( PostmanAdminController::MANAGE_OPTIONS_PAGE_SLUG ), sprintf( '%s', $importExportReset ) );
374
+
375
+ do_action( 'post_smtp_extension_reset_link' );
376
+
377
  print '</ul>';
378
  print '</div>';
379
  ?>
382
  <h4><img class="align-middle" src="<?php echo plugins_url( 'style/images/new.gif', dirname( __DIR__ ) . '/postman-smtp.php' ); ?>"><a style="color: black;" target="_blank" href="https://postmansmtp.com/extensions/">Extensions</a></h4>
383
  <ul>
384
  <li><a target="_blank" href="https://postmansmtp.com/extensions/office-365-for-post-smtp-extension/">Office 365 API</a></li>
385
+ <li><a target="_blank" href="https://postmansmtp.com/extensions/post-smtp-extension-for-amazon-ses/">Amazon SES</a></li>
386
  </ul>
387
  </div>
388
 
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.0.18
10
  * Author: Yehuda Hassine
11
  * Text Domain: post-smtp
12
  * Author URI: https://postmansmtp.com
@@ -35,10 +35,10 @@ if ( ! defined( 'ABSPATH' ) ) {
35
  define( 'POST_SMTP_BASE', __FILE__ );
36
  define( 'POST_SMTP_PATH', __DIR__ );
37
  define( 'POST_SMTP_URL', plugins_url('', POST_SMTP_BASE ) );
38
- define( 'POST_SMTP_VER', '2.0.18' );
39
  define( 'POST_SMTP_SHOW_RELEASE_MESSAGE', true );
40
- define( 'POST_SMTP_RELEASE_MESSAGE', "Post SMTP v2.0.18 - Extensions" );
41
- define( 'POST_SMTP_RELEASE_URL', 'https://postmansmtp.com/post-smtp-2-0-18-extensions/' );
42
 
43
  $postman_smtp_exist = in_array( 'postman-smtp/postman-smtp.php', (array) get_option( 'active_plugins', array() ) );
44
  $required_php_version = version_compare( PHP_VERSION, '5.6.0', '<' );
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.0.19
10
  * Author: Yehuda Hassine
11
  * Text Domain: post-smtp
12
  * Author URI: https://postmansmtp.com
35
  define( 'POST_SMTP_BASE', __FILE__ );
36
  define( 'POST_SMTP_PATH', __DIR__ );
37
  define( 'POST_SMTP_URL', plugins_url('', POST_SMTP_BASE ) );
38
+ define( 'POST_SMTP_VER', '2.0.19' );
39
  define( 'POST_SMTP_SHOW_RELEASE_MESSAGE', true );
40
+ define( 'POST_SMTP_RELEASE_MESSAGE', "All Office365 extension issues are fixed now + Amazon SES Extension download." );
41
+ define( 'POST_SMTP_RELEASE_URL', '#' );
42
 
43
  $postman_smtp_exist = in_array( 'postman-smtp/postman-smtp.php', (array) get_option( 'active_plugins', array() ) );
44
  $required_php_version = version_compare( PHP_VERSION, '5.6.0', '<' );
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=yehudaha
4
  Tags: postman smtp, postman, smtp, email, mail, mailer, email log, oauth2, gmail, google apps, hotmail, yahoo, mandrill api, sendgrid api, elastic email, office365, mailgun
5
  Requires at least: 3.9
6
  Tested up to: 5.6
7
- Stable tag: 2.0.18
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -281,6 +281,10 @@ To avoid being flagged as spam, you need to prove your email isn't forged. On a
281
 
282
  == Changelog ==
283
 
 
 
 
 
284
  = 2.0.18 - 2020-01-17
285
  * New: Plugin Extensions
286
 
4
  Tags: postman smtp, postman, smtp, email, mail, mailer, email log, oauth2, gmail, google apps, hotmail, yahoo, mandrill api, sendgrid api, elastic email, office365, mailgun
5
  Requires at least: 3.9
6
  Tested up to: 5.6
7
+ Stable tag: 2.0.19
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
281
 
282
  == Changelog ==
283
 
284
+ = 2.0.19 - 2020-01-19
285
+ * Fixed: All reported office 365 issues.
286
+ * New: Add link to Amazon SES Extension
287
+
288
  = 2.0.18 - 2020-01-17
289
  * New: Plugin Extensions
290