MailPoet Newsletters (New) - Version 3.0.3

Version Description

  • 2017-10-03 =
  • Fixed: mixed collation error in WordPress user synchronization. Thanks Chris, Till, Robin, Robero, @Seph, @kaiwen and others for the reports!
Download this release

Release Info

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

Code changes from version 3.0.2 to 3.0.3

assets/js/{admin_vendor.5bfea06b.js → admin_vendor.09e16337.js} RENAMED
File without changes
assets/js/manifest.json CHANGED
@@ -2,9 +2,9 @@
2
  "mp2migrator.js": "mp2migrator.e755af46.js",
3
  "public.js": "public.6e3f442a.js",
4
  "admin.js": "admin.5545d8c1.js",
5
- "admin_vendor.js": "admin_vendor.5bfea06b.js",
6
  "form_editor.js": "form_editor.c4bc7e0b.js",
7
  "mailpoet.js": "mailpoet.eab93337.js",
8
  "newsletter_editor.js": "newsletter_editor.ea5d61a2.js",
9
- "vendor.js": "vendor.3c88b878.js"
10
  }
2
  "mp2migrator.js": "mp2migrator.e755af46.js",
3
  "public.js": "public.6e3f442a.js",
4
  "admin.js": "admin.5545d8c1.js",
5
+ "admin_vendor.js": "admin_vendor.09e16337.js",
6
  "form_editor.js": "form_editor.c4bc7e0b.js",
7
  "mailpoet.js": "mailpoet.eab93337.js",
8
  "newsletter_editor.js": "newsletter_editor.ea5d61a2.js",
9
+ "vendor.js": "vendor.2ec824f0.js"
10
  }
assets/js/{vendor.3c88b878.js → vendor.2ec824f0.js} RENAMED
@@ -76,7 +76,7 @@
76
  /******/ script.charset = 'utf-8';
77
  /******/ script.async = true;
78
 
79
- /******/ script.src = __webpack_require__.p + "" + ({"0":"admin","1":"admin_vendor","2":"form_editor","3":"mailpoet","4":"newsletter_editor"}[chunkId]||chunkId) + "." + {"0":"5545d8c1","1":"5bfea06b","2":"c4bc7e0b","3":"eab93337","4":"ea5d61a2"}[chunkId] + ".chunk.js";
80
  /******/ head.appendChild(script);
81
  /******/ }
82
  /******/ };
76
  /******/ script.charset = 'utf-8';
77
  /******/ script.async = true;
78
 
79
+ /******/ script.src = __webpack_require__.p + "" + ({"0":"admin","1":"admin_vendor","2":"form_editor","3":"mailpoet","4":"newsletter_editor"}[chunkId]||chunkId) + "." + {"0":"5545d8c1","1":"09e16337","2":"c4bc7e0b","3":"eab93337","4":"ea5d61a2"}[chunkId] + ".chunk.js";
80
  /******/ head.appendChild(script);
81
  /******/ }
82
  /******/ };
lang/mailpoet-da_DK.mo CHANGED
Binary file
lang/mailpoet-de_DE.mo CHANGED
Binary file
lang/mailpoet-en_GB.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-sv_SE.mo CHANGED
Binary file
lang/mailpoet-tr_TR.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: 2017-10-03 13:34: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"
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://support.mailpoet.com/\n"
7
+ "POT-Creation-Date: 2017-10-03 18:15:09+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
lib/Segments/WP.php CHANGED
@@ -80,7 +80,6 @@ class WP {
80
 
81
  static function synchronizeUsers() {
82
 
83
- self::updateSubscriberWPUserIds();
84
  self::updateSubscribersEmails();
85
  self::insertSubscribers();
86
  self::removeFromTrash();
@@ -93,17 +92,6 @@ class WP {
93
  return true;
94
  }
95
 
96
- private static function updateSubscriberWPUserIds() {
97
- global $wpdb;
98
- $subscribers_table = Subscriber::$_table;
99
- Subscriber::raw_execute(sprintf('
100
- UPDATE IGNORE %s mps
101
- JOIN %s as wu ON mps.email = wu.user_email
102
- SET mps.wp_user_id = wu.ID
103
- WHERE mps.wp_user_id IS NULL
104
- ', $subscribers_table, $wpdb->users));
105
- }
106
-
107
  private static function updateSubscribersEmails() {
108
  global $wpdb;
109
  $subscribers_table = Subscriber::$_table;
@@ -123,6 +111,7 @@ class WP {
123
  SELECT wu.id, wu.user_email, "subscribed", CURRENT_TIMESTAMP() FROM %s wu
124
  LEFT JOIN %s mps ON wu.id = mps.wp_user_id
125
  WHERE mps.wp_user_id IS NULL
 
126
  ', $subscribers_table, $wpdb->users, $subscribers_table));
127
  }
128
 
80
 
81
  static function synchronizeUsers() {
82
 
 
83
  self::updateSubscribersEmails();
84
  self::insertSubscribers();
85
  self::removeFromTrash();
92
  return true;
93
  }
94
 
 
 
 
 
 
 
 
 
 
 
 
95
  private static function updateSubscribersEmails() {
96
  global $wpdb;
97
  $subscribers_table = Subscriber::$_table;
111
  SELECT wu.id, wu.user_email, "subscribed", CURRENT_TIMESTAMP() FROM %s wu
112
  LEFT JOIN %s mps ON wu.id = mps.wp_user_id
113
  WHERE mps.wp_user_id IS NULL
114
+ ON DUPLICATE KEY UPDATE wp_user_id = wu.id
115
  ', $subscribers_table, $wpdb->users, $subscribers_table));
116
  }
117
 
mailpoet.php CHANGED
@@ -4,7 +4,7 @@ if(!defined('ABSPATH')) exit;
4
 
5
  /*
6
  * Plugin Name: MailPoet 3 (new)
7
- * Version: 3.0.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
@@ -20,7 +20,7 @@ if(!defined('ABSPATH')) exit;
20
  */
21
 
22
  $mailpoet_plugin = array(
23
- 'version' => '3.0.2',
24
  'filename' => __FILE__,
25
  'path' => dirname(__FILE__),
26
  'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
4
 
5
  /*
6
  * Plugin Name: MailPoet 3 (new)
7
+ * Version: 3.0.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
20
  */
21
 
22
  $mailpoet_plugin = array(
23
+ 'version' => '3.0.3',
24
  'filename' => __FILE__,
25
  'path' => dirname(__FILE__),
26
  'autoloader' => dirname(__FILE__) . '/vendor/autoload.php',
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: newsletter, email, welcome email, post notification, autoresponder, signup
4
  Requires at least: 4.6
5
  Tested up to: 4.8
6
  Requires PHP: 5.3
7
- Stable tag: 3.0.2
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -114,6 +114,9 @@ Stop by our [support site](https://www.mailpoet.com/support).
114
 
115
  == Changelog ==
116
 
 
 
 
117
  = 3.0.2 - 2017-10-03 =
118
  * Improved: plugin capabilities can be managed with Members plugin;
119
  * Improved: removes unsightly horizontal scrollbar in some parts of the newsletter editor;
4
  Requires at least: 4.6
5
  Tested up to: 4.8
6
  Requires PHP: 5.3
7
+ Stable tag: 3.0.3
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
114
 
115
  == Changelog ==
116
 
117
+ = 3.0.3 - 2017-10-03 =
118
+ * Fixed: mixed collation error in WordPress user synchronization. Thanks Chris, Till, Robin, Robero, @Seph, @kaiwen and others for the reports!
119
+
120
  = 3.0.2 - 2017-10-03 =
121
  * Improved: plugin capabilities can be managed with Members plugin;
122
  * Improved: removes unsightly horizontal scrollbar in some parts of the newsletter editor;
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit80a9d6aa63279f2b4c07f332343fb652::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit14e1b34abe9a0813b25977c3a4677778::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit80a9d6aa63279f2b4c07f332343fb652
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit80a9d6aa63279f2b4c07f332343fb652
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit80a9d6aa63279f2b4c07f332343fb652', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit80a9d6aa63279f2b4c07f332343fb652', '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\ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
@@ -48,19 +48,19 @@ class ComposerAutoloaderInit80a9d6aa63279f2b4c07f332343fb652
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
- $includeFiles = Composer\Autoload\ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
- composerRequire80a9d6aa63279f2b4c07f332343fb652($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
- function composerRequire80a9d6aa63279f2b4c07f332343fb652($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 ComposerAutoloaderInit14e1b34abe9a0813b25977c3a4677778
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit14e1b34abe9a0813b25977c3a4677778', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit14e1b34abe9a0813b25977c3a4677778', '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\ComposerStaticInit14e1b34abe9a0813b25977c3a4677778::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\ComposerStaticInit14e1b34abe9a0813b25977c3a4677778::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
+ composerRequire14e1b34abe9a0813b25977c3a4677778($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
+ function composerRequire14e1b34abe9a0813b25977c3a4677778($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 ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652
8
  {
9
  public static $files = array (
10
  '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
@@ -836,10 +836,10 @@ class ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652
836
  public static function getInitializer(ClassLoader $loader)
837
  {
838
  return \Closure::bind(function () use ($loader) {
839
- $loader->prefixLengthsPsr4 = ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652::$prefixLengthsPsr4;
840
- $loader->prefixDirsPsr4 = ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652::$prefixDirsPsr4;
841
- $loader->prefixesPsr0 = ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652::$prefixesPsr0;
842
- $loader->classMap = ComposerStaticInit80a9d6aa63279f2b4c07f332343fb652::$classMap;
843
 
844
  }, null, ClassLoader::class);
845
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit14e1b34abe9a0813b25977c3a4677778
8
  {
9
  public static $files = array (
10
  '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => __DIR__ . '/..' . '/symfony/polyfill-mbstring/bootstrap.php',
836
  public static function getInitializer(ClassLoader $loader)
837
  {
838
  return \Closure::bind(function () use ($loader) {
839
+ $loader->prefixLengthsPsr4 = ComposerStaticInit14e1b34abe9a0813b25977c3a4677778::$prefixLengthsPsr4;
840
+ $loader->prefixDirsPsr4 = ComposerStaticInit14e1b34abe9a0813b25977c3a4677778::$prefixDirsPsr4;
841
+ $loader->prefixesPsr0 = ComposerStaticInit14e1b34abe9a0813b25977c3a4677778::$prefixesPsr0;
842
+ $loader->classMap = ComposerStaticInit14e1b34abe9a0813b25977c3a4677778::$classMap;
843
 
844
  }, null, ClassLoader::class);
845
  }