Version Description
= v160801 =
(Maintenance Release) Upgrade immediately.
Download this release
Release Info
Developer | clavaque |
Plugin | s2Member Framework (Member Roles, Capabilities, Membership, PayPal Members) |
Version | 190617 |
Comparing to | |
See all releases |
Code changes from version 170722 to 190617
- readme.txt +22 -8
- s2member.php +13 -13
- src/includes/classes/login-customizations.inc.php +1 -1
- src/includes/hooks.inc.php +1 -1
- src/includes/translations/s2member.pot +6 -6
- src/vendor/autoload.php +1 -1
- src/vendor/composer/autoload_real.php +5 -5
readme.txt
CHANGED
@@ -1,14 +1,14 @@
|
|
1 |
=== s2Member Framework (Member Roles, Capabilities, Membership, PayPal Members) ===
|
2 |
|
3 |
-
Version:
|
4 |
-
Stable tag:
|
5 |
-
Tested up to:
|
6 |
Requires at least: 4.2
|
7 |
-
Requires PHP: 5.
|
8 |
-
Tested up to PHP: 7.
|
9 |
License: GNU General Public License v2 or later.
|
10 |
-
Contributors: WebSharks, JasWSInc, raamdev
|
11 |
-
Author:
|
12 |
Author URI: http://s2member.com/
|
13 |
Donate link: http://s2member.com/donate/
|
14 |
Beta link: http://s2member.com/beta-testers/
|
@@ -91,7 +91,7 @@ Please see: <http://s2member.com/r/translations/>
|
|
91 |
|
92 |
== License ==
|
93 |
|
94 |
-
Copyright: © 2013 [
|
95 |
|
96 |
Released under the terms of the [GNU General Public License](http://www.gnu.org/licenses/gpl-2.0.html).
|
97 |
|
@@ -137,6 +137,20 @@ Released under the terms of the [GNU General Public License](http://www.gnu.org/
|
|
137 |
|
138 |
== Changelog ==
|
139 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
= v170722 =
|
141 |
|
142 |
- (s2Member/s2Member Pro) **PayPal IPN Compatibility:** This release includes an updated PayPal IPN handler that is capable of reading number-suffixed IPN variables that are now being sent by PayPal's IPN system in some cases, for some customers. We strongly encourage all site owners to upgrade to this release as soon as possible, particularly if you're using PayPal to process transactions. Props @openmtbmap and @patdumond for reporting. See: [Issue #1112](https://github.com/websharks/s2member/issues/1112)
|
1 |
=== s2Member Framework (Member Roles, Capabilities, Membership, PayPal Members) ===
|
2 |
|
3 |
+
Version: 190617
|
4 |
+
Stable tag: 190617
|
5 |
+
Tested up to: 5.2.2
|
6 |
Requires at least: 4.2
|
7 |
+
Requires PHP: 5.6
|
8 |
+
Tested up to PHP: 7.2.19
|
9 |
License: GNU General Public License v2 or later.
|
10 |
+
Contributors: WebSharks, JasWSInc, raamdev, clavaque
|
11 |
+
Author: WP Sharks
|
12 |
Author URI: http://s2member.com/
|
13 |
Donate link: http://s2member.com/donate/
|
14 |
Beta link: http://s2member.com/beta-testers/
|
91 |
|
92 |
== License ==
|
93 |
|
94 |
+
Copyright: © 2013 [WP Sharks](http://www.wpsharks.com/) (coded in the USA)
|
95 |
|
96 |
Released under the terms of the [GNU General Public License](http://www.gnu.org/licenses/gpl-2.0.html).
|
97 |
|
137 |
|
138 |
== Changelog ==
|
139 |
|
140 |
+
= v190617 =
|
141 |
+
|
142 |
+
- (s2Member Pro) **Authorize.Net Hash Upgrade:** Authorize.Net [announced](https://support.authorize.net/s/article/MD5-Hash-End-of-Life-Signature-Key-Replacement) the end-of-life for their MD5 Hash in favor of their new SHA512 Signature Key. Support for this has been added to s2Member Pro. The MD5 Hash is not provided by Authorize.Net any more, so the field for it in s2Member has been disabled. Props @krumch for his work. For further details see [forum thread 5514](https://f.wpsharks.com/t/5514).
|
143 |
+
|
144 |
+
**Note:** For those that already used the MD5 Hash in their configuration, it is kept there and will keep working while Authorize.Net accepts it, which will not be much longer. It's important to update your integration with the new Signature Key. Once you have your Signature Key in the s2Member configuration, it will be favored over the old MD5 Hash._
|
145 |
+
|
146 |
+
- (s2Member Pro) **Bug Fix:** The multisite patch for `wp-admin/user_new.php` wasn't finding the code to replace because of changes in the latest releases of WordPress. It has now been updated, as well as the instructions in the Dashboard for those that prefer to apply it manually. Props @crazycoolcam for reporting it. For further details see [Issue #1132](https://github.com/wpsharks/s2member/issues/1132).
|
147 |
+
|
148 |
+
**Note:** If you already had patched this file in the past, it's recommended that you remove the previous patch restoring it to the original file, and let s2Member Pro patch it again now, otherwise you risk getting it patched over the previous one and ending up with errors. After the new patch, please review that file to verify that it's correct._
|
149 |
+
|
150 |
+
- (s2Member Pro) **Bug Fix:** The search results for `s2Member-List` were not being ordered as specified in the `orderby` attribute when this was a field from the `usermeta` table in the database, e.g. `first_name`, `last_name`. This is now fixed and working correctly. Props to @stevenwolock for reporting it. For further details see [Issue #1103](https://github.com/wpsharks/s2member/issues/1103).
|
151 |
+
|
152 |
+
- (s2Member) **WP 5.2 Compat. Enhancement:** s2Member has been tested with WP up to 5.2.2-alpha. With `WP_DEBUG` enabled, only one "notice" was found. In `wp-login.php` it said 'login_headertitle is deprecated since version 5.2.0! Use login_headertext instead.' This release now uses `login_headertext` and doesn't get that notice anymore. Props Azunga for reporting it. See [forum thread 5962](https://f.wpsharks.com/t/5962).
|
153 |
+
|
154 |
= v170722 =
|
155 |
|
156 |
- (s2Member/s2Member Pro) **PayPal IPN Compatibility:** This release includes an updated PayPal IPN handler that is capable of reading number-suffixed IPN variables that are now being sent by PayPal's IPN system in some cases, for some customers. We strongly encourage all site owners to upgrade to this release as soon as possible, particularly if you're using PayPal to process transactions. Props @openmtbmap and @patdumond for reporting. See: [Issue #1112](https://github.com/websharks/s2member/issues/1112)
|
s2member.php
CHANGED
@@ -7,7 +7,7 @@
|
|
7 |
* PHP, WordPress and other compatibility requirements.
|
8 |
*
|
9 |
* Copyright: © 2009-2011
|
10 |
-
* {@link http://
|
11 |
* (coded in the USA)
|
12 |
*
|
13 |
* Released under the terms of the GNU General Public License.
|
@@ -20,8 +20,8 @@
|
|
20 |
*/
|
21 |
/* -- This section for WordPress parsing. ------------------------------------------------------------------------------
|
22 |
|
23 |
-
Version:
|
24 |
-
Stable tag:
|
25 |
|
26 |
SSL Compatible: yes
|
27 |
bbPress Compatible: yes
|
@@ -31,22 +31,22 @@ WP Multisite Compatible: yes
|
|
31 |
Multisite Blog Farm Compatible: yes
|
32 |
|
33 |
PayPal Standard Compatible: yes
|
|
|
34 |
PayPal Pro Compatible: yes w/s2Member Pro
|
35 |
Authorize.Net Compatible: yes w/s2Member Pro
|
36 |
-
Google Wallet Compatible: yes w/s2Member Pro
|
37 |
ClickBank Compatible: yes w/s2Member Pro
|
38 |
|
39 |
-
Tested up to:
|
40 |
Requires at least: 4.2
|
41 |
|
42 |
-
Requires PHP: 5.
|
43 |
-
Tested up to PHP: 7.
|
44 |
|
45 |
-
Copyright: © 2009
|
46 |
License: GNU General Public License
|
47 |
-
Contributors: WebSharks, JasWSInc, anguz, raamdev, bruce-caldwell
|
48 |
|
49 |
-
Author:
|
50 |
Author URI: http://s2member.com/
|
51 |
Donate link: http://s2member.com/r/donate
|
52 |
|
@@ -77,7 +77,7 @@ if(!defined('WPINC')) // MUST have WordPress.
|
|
77 |
*
|
78 |
* @var string
|
79 |
*/
|
80 |
-
${__FILE__}['tmp'] = '
|
81 |
if(!defined('WS_PLUGIN__S2MEMBER_VERSION'))
|
82 |
define('WS_PLUGIN__S2MEMBER_VERSION', ${__FILE__}['tmp']);
|
83 |
/**
|
@@ -88,7 +88,7 @@ if(!defined('WS_PLUGIN__S2MEMBER_VERSION'))
|
|
88 |
*
|
89 |
* @var string
|
90 |
*/
|
91 |
-
${__FILE__}['tmp'] = '5.
|
92 |
if(!defined('WS_PLUGIN__S2MEMBER_MIN_PHP_VERSION'))
|
93 |
define('WS_PLUGIN__S2MEMBER_MIN_PHP_VERSION', ${__FILE__}['tmp']);
|
94 |
/**
|
@@ -110,7 +110,7 @@ if(!defined('WS_PLUGIN__S2MEMBER_MIN_WP_VERSION'))
|
|
110 |
*
|
111 |
* @var string
|
112 |
*/
|
113 |
-
${__FILE__}['tmp'] = '
|
114 |
if(!defined('WS_PLUGIN__S2MEMBER_MIN_PRO_VERSION'))
|
115 |
define('WS_PLUGIN__S2MEMBER_MIN_PRO_VERSION', ${__FILE__}['tmp']);
|
116 |
/*
|
7 |
* PHP, WordPress and other compatibility requirements.
|
8 |
*
|
9 |
* Copyright: © 2009-2011
|
10 |
+
* {@link http://wpsharks.com/ WP Sharks}
|
11 |
* (coded in the USA)
|
12 |
*
|
13 |
* Released under the terms of the GNU General Public License.
|
20 |
*/
|
21 |
/* -- This section for WordPress parsing. ------------------------------------------------------------------------------
|
22 |
|
23 |
+
Version: 190617
|
24 |
+
Stable tag: 190617
|
25 |
|
26 |
SSL Compatible: yes
|
27 |
bbPress Compatible: yes
|
31 |
Multisite Blog Farm Compatible: yes
|
32 |
|
33 |
PayPal Standard Compatible: yes
|
34 |
+
Stripe Compatible: yes w/s2Member Pro
|
35 |
PayPal Pro Compatible: yes w/s2Member Pro
|
36 |
Authorize.Net Compatible: yes w/s2Member Pro
|
|
|
37 |
ClickBank Compatible: yes w/s2Member Pro
|
38 |
|
39 |
+
Tested up to: 5.2.2-RC2
|
40 |
Requires at least: 4.2
|
41 |
|
42 |
+
Requires PHP: 5.6
|
43 |
+
Tested up to PHP: 7.2.19-0ubuntu0.18.10.1
|
44 |
|
45 |
+
Copyright: © 2009 WP Sharks
|
46 |
License: GNU General Public License
|
47 |
+
Contributors: WebSharks, JasWSInc, anguz, raamdev, bruce-caldwell, clavaque
|
48 |
|
49 |
+
Author: WP Sharks
|
50 |
Author URI: http://s2member.com/
|
51 |
Donate link: http://s2member.com/r/donate
|
52 |
|
77 |
*
|
78 |
* @var string
|
79 |
*/
|
80 |
+
${__FILE__}['tmp'] = '190617'; //version//
|
81 |
if(!defined('WS_PLUGIN__S2MEMBER_VERSION'))
|
82 |
define('WS_PLUGIN__S2MEMBER_VERSION', ${__FILE__}['tmp']);
|
83 |
/**
|
88 |
*
|
89 |
* @var string
|
90 |
*/
|
91 |
+
${__FILE__}['tmp'] = '5.6'; //php-required-version//
|
92 |
if(!defined('WS_PLUGIN__S2MEMBER_MIN_PHP_VERSION'))
|
93 |
define('WS_PLUGIN__S2MEMBER_MIN_PHP_VERSION', ${__FILE__}['tmp']);
|
94 |
/**
|
110 |
*
|
111 |
* @var string
|
112 |
*/
|
113 |
+
${__FILE__}['tmp'] = '190617'; //version//
|
114 |
if(!defined('WS_PLUGIN__S2MEMBER_MIN_PRO_VERSION'))
|
115 |
define('WS_PLUGIN__S2MEMBER_MIN_PRO_VERSION', ${__FILE__}['tmp']);
|
116 |
/*
|
src/includes/classes/login-customizations.inc.php
CHANGED
@@ -58,7 +58,7 @@ if(!class_exists('c_ws_plugin__s2member_login_customizations'))
|
|
58 |
* @package s2Member\Login_Customizations
|
59 |
* @since 3.5
|
60 |
*
|
61 |
-
* @attaches-to ``add_filter('
|
62 |
*
|
63 |
* @param string $title Expects a title passed in by the Filter.
|
64 |
*
|
58 |
* @package s2Member\Login_Customizations
|
59 |
* @since 3.5
|
60 |
*
|
61 |
+
* @attaches-to ``add_filter('login_headertext');``
|
62 |
*
|
63 |
* @param string $title Expects a title passed in by the Filter.
|
64 |
*
|
src/includes/hooks.inc.php
CHANGED
@@ -125,7 +125,7 @@ add_action('xprofile_updated_profile', 'c_ws_plugin__s2member_profile_mods_4bp::
|
|
125 |
add_action('wp_login', 'c_ws_plugin__s2member_login_redirects::login_redirect', 10, 2);
|
126 |
add_action('login_head', 'c_ws_plugin__s2member_login_customizations::login_header_styles');
|
127 |
add_filter('login_headerurl', 'c_ws_plugin__s2member_login_customizations::login_header_url');
|
128 |
-
add_filter('
|
129 |
add_action('login_footer', 'c_ws_plugin__s2member_login_customizations::login_footer_design');
|
130 |
add_filter("lostpassword_url", "c_ws_plugin__s2member_login_customizations::lost_password_url", 10, 2);
|
131 |
|
125 |
add_action('wp_login', 'c_ws_plugin__s2member_login_redirects::login_redirect', 10, 2);
|
126 |
add_action('login_head', 'c_ws_plugin__s2member_login_customizations::login_header_styles');
|
127 |
add_filter('login_headerurl', 'c_ws_plugin__s2member_login_customizations::login_header_url');
|
128 |
+
add_filter('login_headertext', 'c_ws_plugin__s2member_login_customizations::login_header_title');
|
129 |
add_action('login_footer', 'c_ws_plugin__s2member_login_customizations::login_footer_design');
|
130 |
add_filter("lostpassword_url", "c_ws_plugin__s2member_login_customizations::lost_password_url", 10, 2);
|
131 |
|
src/includes/translations/s2member.pot
CHANGED
@@ -1,14 +1,14 @@
|
|
1 |
-
# Copyright (C)
|
2 |
# This file is distributed under the same license as the package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version:
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/s2member\n"
|
7 |
-
"POT-Creation-Date:
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date:
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
@@ -18,7 +18,7 @@ msgid "+ tax"
|
|
18 |
msgstr ""
|
19 |
|
20 |
#: pro/src/includes/classes/coupons.inc.php:241
|
21 |
-
#: pro/src/includes/classes/gateways/authnet/authnet-utilities.inc.php:
|
22 |
#: pro/src/includes/classes/gateways/paypal/paypal-utilities.inc.php:312
|
23 |
#: pro/src/includes/classes/gateways/stripe/stripe-utilities.inc.php:900
|
24 |
msgctxt "s2member-front percentage-symbol"
|
@@ -430,7 +430,7 @@ msgstr ""
|
|
430 |
|
431 |
#: pro/src/includes/classes/gateways/authnet/authnet-responses.inc.php:212
|
432 |
msgctxt "s2member-admin"
|
433 |
-
msgid "Authorize.Net configuration error. Your Authorize.Net
|
434 |
msgstr ""
|
435 |
|
436 |
#: pro/src/includes/classes/gateways/authnet/authnet-responses.inc.php:234
|
1 |
+
# Copyright (C) 2019
|
2 |
# This file is distributed under the same license as the package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: 190617\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/s2member\n"
|
7 |
+
"POT-Creation-Date: 2019-06-17 00:36:46+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2019-MO-DA HO:MI+ZONE\n"
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
18 |
msgstr ""
|
19 |
|
20 |
#: pro/src/includes/classes/coupons.inc.php:241
|
21 |
+
#: pro/src/includes/classes/gateways/authnet/authnet-utilities.inc.php:692
|
22 |
#: pro/src/includes/classes/gateways/paypal/paypal-utilities.inc.php:312
|
23 |
#: pro/src/includes/classes/gateways/stripe/stripe-utilities.inc.php:900
|
24 |
msgctxt "s2member-front percentage-symbol"
|
430 |
|
431 |
#: pro/src/includes/classes/gateways/authnet/authnet-responses.inc.php:212
|
432 |
msgctxt "s2member-admin"
|
433 |
+
msgid "Authorize.Net configuration error. Your Authorize.Net Signature Key is not yet configured."
|
434 |
msgstr ""
|
435 |
|
436 |
#: pro/src/includes/classes/gateways/authnet/authnet-responses.inc.php:234
|
src/vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit3d2e56f8124719cd50c1419a5b5b04e5::getLoader();
|
src/vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit9da2b04099525fccfb91e6dbe84e45d6
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
foreach ($map as $namespace => $path) {
|
@@ -42,14 +42,14 @@ class ComposerAutoloaderInit9da2b04099525fccfb91e6dbe84e45d6
|
|
42 |
|
43 |
$includeFiles = require __DIR__ . '/autoload_files.php';
|
44 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
45 |
-
|
46 |
}
|
47 |
|
48 |
return $loader;
|
49 |
}
|
50 |
}
|
51 |
|
52 |
-
function
|
53 |
{
|
54 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
55 |
require $file;
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit3d2e56f8124719cd50c1419a5b5b04e5
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit3d2e56f8124719cd50c1419a5b5b04e5', 'loadClassLoader'), true, true);
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit3d2e56f8124719cd50c1419a5b5b04e5', 'loadClassLoader'));
|
25 |
|
26 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
foreach ($map as $namespace => $path) {
|
42 |
|
43 |
$includeFiles = require __DIR__ . '/autoload_files.php';
|
44 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
45 |
+
composerRequire3d2e56f8124719cd50c1419a5b5b04e5($fileIdentifier, $file);
|
46 |
}
|
47 |
|
48 |
return $loader;
|
49 |
}
|
50 |
}
|
51 |
|
52 |
+
function composerRequire3d2e56f8124719cd50c1419a5b5b04e5($fileIdentifier, $file)
|
53 |
{
|
54 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
55 |
require $file;
|