MailPoet Newsletters (New) - Version 3.8.3

Version Description

  • 2018-08-01 =
  • Fixed: resolved potential duplicate sending issue.
Download this release

Release Info

Developer wysija
Plugin Icon 128x128 MailPoet Newsletters (New)
Version 3.8.3
Comparing to
See all releases

Code changes from version 3.8.2 to 3.8.3

lang/mailpoet-ca.mo CHANGED
Binary file
lang/mailpoet-da_DK.mo CHANGED
Binary file
lang/mailpoet-de_DE.mo CHANGED
Binary file
lang/mailpoet-es_ES.mo CHANGED
Binary file
lang/mailpoet-fa_IR.mo CHANGED
Binary file
lang/mailpoet-fr_CA.mo CHANGED
Binary file
lang/mailpoet-fr_FR.mo CHANGED
Binary file
lang/mailpoet-it_IT.mo CHANGED
Binary file
lang/mailpoet-ja.mo CHANGED
Binary file
lang/mailpoet-nl_NL.mo CHANGED
Binary file
lang/mailpoet-pl_PL.mo CHANGED
Binary file
lang/mailpoet-pt_BR.mo CHANGED
Binary file
lang/mailpoet-pt_PT.mo CHANGED
Binary file
lang/mailpoet-ru_RU.mo CHANGED
Binary file
lang/mailpoet-sq.mo CHANGED
Binary file
lang/mailpoet-sv_SE.mo CHANGED
Binary file
lang/mailpoet-tr_TR.mo CHANGED
Binary file
lang/mailpoet-zh_CN.mo CHANGED
Binary file
lang/mailpoet.pot CHANGED
@@ -4,7 +4,7 @@ msgid ""
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
7
- "POT-Creation-Date: 2018-07-31 09:24:28+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -1124,11 +1124,11 @@ msgstr ""
1124
  msgid "Preview in a new tab"
1125
  msgstr ""
1126
 
1127
- #: lib/Cron/CronHelper.php:159
1128
  msgid "Site URL is unreachable."
1129
  msgstr ""
1130
 
1131
- #: lib/Cron/CronHelper.php:165
1132
  msgid "Maximum execution time has been reached."
1133
  msgstr ""
1134
 
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
7
+ "POT-Creation-Date: 2018-08-01 12:29:35+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
1124
  msgid "Preview in a new tab"
1125
  msgstr ""
1126
 
1127
+ #: lib/Cron/CronHelper.php:175
1128
  msgid "Site URL is unreachable."
1129
  msgstr ""
1130
 
1131
+ #: lib/Cron/CronHelper.php:181
1132
  msgid "Maximum execution time has been reached."
1133
  msgstr ""
1134
 
lib/Cron/CronHelper.php CHANGED
@@ -40,6 +40,22 @@ class CronHelper {
40
  return Setting::getValue(self::DAEMON_SETTING);
41
  }
42
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  static function saveDaemon($daemon) {
44
  $daemon['updated_at'] = time();
45
  return Setting::setValue(
@@ -165,4 +181,4 @@ class CronHelper {
165
  throw new \Exception(__('Maximum execution time has been reached.', 'mailpoet'));
166
  }
167
  }
168
- }
40
  return Setting::getValue(self::DAEMON_SETTING);
41
  }
42
 
43
+ static function saveDaemonLastError($error) {
44
+ $daemon = self::getDaemon();
45
+ if($daemon) {
46
+ $daemon['last_error'] = $error;
47
+ self::saveDaemon($daemon);
48
+ }
49
+ }
50
+
51
+ static function saveDaemonRunCompleted($run_completed_at) {
52
+ $daemon = self::getDaemon();
53
+ if($daemon) {
54
+ $daemon['run_completed_at'] = $run_completed_at;
55
+ self::saveDaemon($daemon);
56
+ }
57
+ }
58
+
59
  static function saveDaemon($daemon) {
60
  $daemon['updated_at'] = time();
61
  return Setting::setValue(
181
  throw new \Exception(__('Maximum execution time has been reached.', 'mailpoet'));
182
  }
183
  }
184
+ }
lib/Cron/Daemon.php CHANGED
@@ -61,12 +61,10 @@ class Daemon {
61
  $this->executePremiumKeyCheckWorker();
62
  $this->executeBounceWorker();
63
  } catch(\Exception $e) {
64
- $daemon['last_error'] = $e->getMessage();
65
- CronHelper::saveDaemon($daemon);
66
  }
67
  // Log successful execution
68
- $daemon['run_completed_at'] = time();
69
- CronHelper::saveDaemon($daemon);
70
  // if workers took less time to execute than the daemon execution limit,
71
  // pause daemon execution to ensure that daemon runs only once every X seconds
72
  $elapsed_time = microtime(true) - $this->timer;
@@ -137,4 +135,4 @@ class Daemon {
137
  $daemon['token'] !== $this->token ||
138
  (isset($daemon['status']) && $daemon['status'] !== CronHelper::DAEMON_STATUS_ACTIVE);
139
  }
140
- }
61
  $this->executePremiumKeyCheckWorker();
62
  $this->executeBounceWorker();
63
  } catch(\Exception $e) {
64
+ CronHelper::saveDaemonLastError($e->getMessage());
 
65
  }
66
  // Log successful execution
67
+ CronHelper::saveDaemonRunCompleted(time());
 
68
  // if workers took less time to execute than the daemon execution limit,
69
  // pause daemon execution to ensure that daemon runs only once every X seconds
70
  $elapsed_time = microtime(true) - $this->timer;
135
  $daemon['token'] !== $this->token ||
136
  (isset($daemon['status']) && $daemon['status'] !== CronHelper::DAEMON_STATUS_ACTIVE);
137
  }
138
+ }
mailpoet.php CHANGED
@@ -4,7 +4,7 @@ if(!defined('ABSPATH')) exit;
4
 
5
  /*
6
  * Plugin Name: MailPoet 3 (New)
7
- * Version: 3.8.2
8
  * Plugin URI: http://www.mailpoet.com
9
  * Description: Create and send newsletters, post notifications and welcome emails from your WordPress.
10
  * Author: MailPoet
@@ -18,7 +18,7 @@ if(!defined('ABSPATH')) exit;
18
  */
19
 
20
  $mailpoet_plugin = array(
21
- 'version' => '3.8.2',
22
  'filename' => __FILE__,
23
  'path' => dirname(__FILE__),
24
  'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
4
 
5
  /*
6
  * Plugin Name: MailPoet 3 (New)
7
+ * Version: 3.8.3
8
  * Plugin URI: http://www.mailpoet.com
9
  * Description: Create and send newsletters, post notifications and welcome emails from your WordPress.
10
  * Author: MailPoet
18
  */
19
 
20
  $mailpoet_plugin = array(
21
+ 'version' => '3.8.3',
22
  'filename' => __FILE__,
23
  'path' => dirname(__FILE__),
24
  'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: newsletter, newsletter subscribers, email, welcome email, post notificatio
4
  Requires at least: 4.7
5
  Tested up to: 4.9
6
  Requires PHP: 5.6
7
- Stable tag: 3.8.2
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -146,6 +146,9 @@ Stop by our [support site](https://www.mailpoet.com/support).
146
 
147
  == Changelog ==
148
 
 
 
 
149
  = 3.8.2 - 2018-07-31 =
150
  * Added: more useful sending status information in Help page.
151
 
4
  Requires at least: 4.7
5
  Tested up to: 4.9
6
  Requires PHP: 5.6
7
+ Stable tag: 3.8.3
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
146
 
147
  == Changelog ==
148
 
149
+ = 3.8.3 - 2018-08-01 =
150
+ * Fixed: resolved potential duplicate sending issue.
151
+
152
  = 3.8.2 - 2018-07-31 =
153
  * Added: more useful sending status information in Help page.
154
 
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInitb1f3f9f3e9c68636b51d53ce8275d19e::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit887f2d17e39efcdc79504c61b7a29413::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInitb1f3f9f3e9c68636b51d53ce8275d19e
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInitb1f3f9f3e9c68636b51d53ce8275d19e
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInitb1f3f9f3e9c68636b51d53ce8275d19e', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInitb1f3f9f3e9c68636b51d53ce8275d19e', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
@@ -48,19 +48,19 @@ class ComposerAutoloaderInitb1f3f9f3e9c68636b51d53ce8275d19e
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
- $includeFiles = Composer\Autoload\ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
- composerRequireb1f3f9f3e9c68636b51d53ce8275d19e($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
- function composerRequireb1f3f9f3e9c68636b51d53ce8275d19e($fileIdentifier, $file)
64
  {
65
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
66
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit887f2d17e39efcdc79504c61b7a29413
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit887f2d17e39efcdc79504c61b7a29413', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit887f2d17e39efcdc79504c61b7a29413', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
+ $includeFiles = Composer\Autoload\ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
+ composerRequire887f2d17e39efcdc79504c61b7a29413($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
+ function composerRequire887f2d17e39efcdc79504c61b7a29413($fileIdentifier, $file)
64
  {
65
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
66
  require $file;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e
8
  {
9
  public static $files = array (
10
  '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
@@ -1001,11 +1001,11 @@ class ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e
1001
  public static function getInitializer(ClassLoader $loader)
1002
  {
1003
  return \Closure::bind(function () use ($loader) {
1004
- $loader->prefixLengthsPsr4 = ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::$prefixLengthsPsr4;
1005
- $loader->prefixDirsPsr4 = ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::$prefixDirsPsr4;
1006
- $loader->fallbackDirsPsr4 = ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::$fallbackDirsPsr4;
1007
- $loader->prefixesPsr0 = ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::$prefixesPsr0;
1008
- $loader->classMap = ComposerStaticInitb1f3f9f3e9c68636b51d53ce8275d19e::$classMap;
1009
 
1010
  }, null, ClassLoader::class);
1011
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit887f2d17e39efcdc79504c61b7a29413
8
  {
9
  public static $files = array (
10
  '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
1001
  public static function getInitializer(ClassLoader $loader)
1002
  {
1003
  return \Closure::bind(function () use ($loader) {
1004
+ $loader->prefixLengthsPsr4 = ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::$prefixLengthsPsr4;
1005
+ $loader->prefixDirsPsr4 = ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::$prefixDirsPsr4;
1006
+ $loader->fallbackDirsPsr4 = ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::$fallbackDirsPsr4;
1007
+ $loader->prefixesPsr0 = ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::$prefixesPsr0;
1008
+ $loader->classMap = ComposerStaticInit887f2d17e39efcdc79504c61b7a29413::$classMap;
1009
 
1010
  }, null, ClassLoader::class);
1011
  }