Version Description
- 2019-12-20 =
- BUG FIX: Fixed issue with the update billing page when using the Stripe gateway.
Download this release
Release Info
Developer | strangerstudios |
Plugin | Paid Memberships Pro |
Version | 2.2.4 |
Comparing to | |
See all releases |
Code changes from version 2.2.2 to 2.2.4
- CHANGELOG.txt +9 -0
- classes/class-pmpro-members-list-table.php +14 -14
- classes/class.memberorder.php +2 -2
- classes/gateways/class.pmprogateway_stripe.php +5 -3
- includes/adminpages.php +2 -2
- js/pmpro-stripe.js +7 -0
- paid-memberships-pro.php +2 -2
- preheaders/billing.php +4 -2
- readme.txt +10 -1
CHANGELOG.txt
CHANGED
@@ -1,4 +1,13 @@
|
|
1 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
= 2.2.2 - 2019-11-29 =
|
3 |
* BUG FIX: Fixed issue with member search.
|
4 |
* BUG FIX: Fixed issue with custom columns in the members list. (Thanks, Tim Sparks)
|
1 |
== Changelog ==
|
2 |
+
= 2.2.4 - 2019-12-20 =
|
3 |
+
* BUG FIX: Fixed issue with the update billing page when using the Stripe gateway.
|
4 |
+
|
5 |
+
= 2.2.3 - 2019-12-09 =
|
6 |
+
* BUG FIX: Fixed issue where Stripe checkout failed for free levels that had their price adjusted through the donations or variable pricing add ons.
|
7 |
+
* BUG FIX: Fixed undeclared variables warnings in the members list.
|
8 |
+
* BUG FIX: Fixed the edit user links in the email sent to admins when cancelations have errors.
|
9 |
+
* REFACTOR: Removed some unused code from the members list class.
|
10 |
+
|
11 |
= 2.2.2 - 2019-11-29 =
|
12 |
* BUG FIX: Fixed issue with member search.
|
13 |
* BUG FIX: Fixed issue with custom columns in the members list. (Thanks, Tim Sparks)
|
classes/class-pmpro-members-list-table.php
CHANGED
@@ -197,20 +197,6 @@ class PMPro_Members_List_Table extends WP_List_Table {
|
|
197 |
);
|
198 |
}
|
199 |
|
200 |
-
/**
|
201 |
-
* Return number of visible columns
|
202 |
-
*
|
203 |
-
* @since 2.2.0
|
204 |
-
*
|
205 |
-
* @access public
|
206 |
-
* @return int
|
207 |
-
*/
|
208 |
-
public function get_column_count() {
|
209 |
-
list ( $columns, $hidden ) = $this->get_column_info();
|
210 |
-
$hidden = array_intersect( array_keys( $columns ), array_filter( $hidden ) );
|
211 |
-
return count( $columns ) - count( $hidden );
|
212 |
-
}
|
213 |
-
|
214 |
/**
|
215 |
* Allows you to sort the data by the variables set in the $_GET
|
216 |
*
|
@@ -252,6 +238,15 @@ class PMPro_Members_List_Table extends WP_List_Table {
|
|
252 |
* @return void
|
253 |
*/
|
254 |
public function no_items() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
255 |
?>
|
256 |
<p>
|
257 |
<?php _e( 'No members found.', 'paid-memberships-pro' ); ?>
|
@@ -594,6 +589,11 @@ class PMPro_Members_List_Table extends WP_List_Table {
|
|
594 |
}
|
595 |
|
596 |
public function get_some_actions() {
|
|
|
|
|
|
|
|
|
|
|
597 |
?>
|
598 |
<ul class="subsubsub">
|
599 |
<li>
|
197 |
);
|
198 |
}
|
199 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
200 |
/**
|
201 |
* Allows you to sort the data by the variables set in the $_GET
|
202 |
*
|
238 |
* @return void
|
239 |
*/
|
240 |
public function no_items() {
|
241 |
+
if ( isset( $_REQUEST['l'] ) ) {
|
242 |
+
$l = sanitize_text_field( $_REQUEST['l'] );
|
243 |
+
} else {
|
244 |
+
$l = false;
|
245 |
+
}
|
246 |
+
if(isset($_REQUEST['s']))
|
247 |
+
$s = sanitize_text_field(trim($_REQUEST['s']));
|
248 |
+
else
|
249 |
+
$s = "";
|
250 |
?>
|
251 |
<p>
|
252 |
<?php _e( 'No members found.', 'paid-memberships-pro' ); ?>
|
589 |
}
|
590 |
|
591 |
public function get_some_actions() {
|
592 |
+
if ( isset( $_REQUEST['l'] ) ) {
|
593 |
+
$l = sanitize_text_field( $_REQUEST['l'] );
|
594 |
+
} else {
|
595 |
+
$l = false;
|
596 |
+
}
|
597 |
?>
|
598 |
<ul class="subsubsub">
|
599 |
<li>
|
classes/class.memberorder.php
CHANGED
@@ -861,8 +861,8 @@
|
|
861 |
$pmproemail->data["body"] .= '<p>' . __('Gateway', 'paid-memberships-pro') . ': ' . $this->gateway . '</p>';
|
862 |
$pmproemail->data["body"] .= '<p>' . __('Subscription Transaction ID', 'paid-memberships-pro') . ': ' . $this->subscription_transaction_id . '</p>';
|
863 |
$pmproemail->data["body"] .= '<hr />';
|
864 |
-
$pmproemail->data["body"] .= '<p>' . __('Edit User', 'paid-memberships-pro') . ': ' .
|
865 |
-
$pmproemail->data["body"] .= '<p>' . __('Edit Order', 'paid-memberships-pro') . ': ' . add_query_arg( array( 'page' => 'pmpro-orders', 'order' => $this->id ), admin_url('admin.php' ) ) . '</p>';
|
866 |
$pmproemail->sendEmail(get_bloginfo("admin_email"));
|
867 |
} else {
|
868 |
//Note: status would have been set to cancelled by the gateway class. So we don't have to update it here.
|
861 |
$pmproemail->data["body"] .= '<p>' . __('Gateway', 'paid-memberships-pro') . ': ' . $this->gateway . '</p>';
|
862 |
$pmproemail->data["body"] .= '<p>' . __('Subscription Transaction ID', 'paid-memberships-pro') . ': ' . $this->subscription_transaction_id . '</p>';
|
863 |
$pmproemail->data["body"] .= '<hr />';
|
864 |
+
$pmproemail->data["body"] .= '<p>' . __('Edit User', 'paid-memberships-pro') . ': ' . esc_url( add_query_arg( 'user_id', $this->user_id, self_admin_url( 'user-edit.php' ) ) ) . '</p>';
|
865 |
+
$pmproemail->data["body"] .= '<p>' . __('Edit Order', 'paid-memberships-pro') . ': ' . esc_url( add_query_arg( array( 'page' => 'pmpro-orders', 'order' => $this->id ), admin_url('admin.php' ) ) ) . '</p>';
|
866 |
$pmproemail->sendEmail(get_bloginfo("admin_email"));
|
867 |
} else {
|
868 |
//Note: status would have been set to cancelled by the gateway class. So we don't have to update it here.
|
classes/gateways/class.pmprogateway_stripe.php
CHANGED
@@ -160,7 +160,8 @@ class PMProGateway_stripe extends PMProGateway {
|
|
160 |
$default_gateway = pmpro_getOption( 'gateway' );
|
161 |
$current_gateway = pmpro_getGateway();
|
162 |
|
163 |
-
|
|
|
164 |
{
|
165 |
add_action( 'pmpro_after_checkout_preheader', array(
|
166 |
'PMProGateway_stripe',
|
@@ -361,11 +362,11 @@ class PMProGateway_stripe extends PMProGateway {
|
|
361 |
*/
|
362 |
static function pmpro_checkout_after_preheader( $order ) {
|
363 |
|
364 |
-
global $gateway, $pmpro_level, $current_user;
|
365 |
|
366 |
$default_gateway = pmpro_getOption( "gateway" );
|
367 |
|
368 |
-
if (
|
369 |
//stripe js library
|
370 |
wp_enqueue_script( "stripe", "https://js.stripe.com/v3/", array(), null );
|
371 |
|
@@ -377,6 +378,7 @@ class PMProGateway_stripe extends PMProGateway {
|
|
377 |
'verifyAddress' => apply_filters( 'pmpro_stripe_verify_address', pmpro_getOption( 'stripe_billingaddress' ) ),
|
378 |
'ajaxUrl' => admin_url( "admin-ajax.php" ),
|
379 |
'msgAuthenticationValidated' => __( 'Verification steps confirmed. Your payment is processing.', 'paid-memberships-pro' ),
|
|
|
380 |
);
|
381 |
|
382 |
if ( ! empty( $order ) ) {
|
160 |
$default_gateway = pmpro_getOption( 'gateway' );
|
161 |
$current_gateway = pmpro_getGateway();
|
162 |
|
163 |
+
// $_REQUEST['review'] here means the PayPal Express review pag
|
164 |
+
if ( ( $default_gateway == "stripe" || $current_gateway == "stripe" ) && empty( $_REQUEST['review'] ) )
|
165 |
{
|
166 |
add_action( 'pmpro_after_checkout_preheader', array(
|
167 |
'PMProGateway_stripe',
|
362 |
*/
|
363 |
static function pmpro_checkout_after_preheader( $order ) {
|
364 |
|
365 |
+
global $gateway, $pmpro_level, $current_user, $pmpro_requirebilling;
|
366 |
|
367 |
$default_gateway = pmpro_getOption( "gateway" );
|
368 |
|
369 |
+
if ( $gateway == "stripe" || $default_gateway == "stripe" ) {
|
370 |
//stripe js library
|
371 |
wp_enqueue_script( "stripe", "https://js.stripe.com/v3/", array(), null );
|
372 |
|
378 |
'verifyAddress' => apply_filters( 'pmpro_stripe_verify_address', pmpro_getOption( 'stripe_billingaddress' ) ),
|
379 |
'ajaxUrl' => admin_url( "admin-ajax.php" ),
|
380 |
'msgAuthenticationValidated' => __( 'Verification steps confirmed. Your payment is processing.', 'paid-memberships-pro' ),
|
381 |
+
'pmpro_require_billing' => $pmpro_requirebilling,
|
382 |
);
|
383 |
|
384 |
if ( ! empty( $order ) ) {
|
includes/adminpages.php
CHANGED
@@ -56,7 +56,7 @@ function pmpro_add_pages() {
|
|
56 |
|
57 |
// Check License Key for Correct Link Color
|
58 |
$key = get_option( 'pmpro_license_key', '' );
|
59 |
-
if ( pmpro_license_isValid( $key, NULL
|
60 |
$span_color = '#33FF00';
|
61 |
} else {
|
62 |
$span_color = '#FF3333';
|
@@ -210,7 +210,7 @@ function pmpro_admin_bar_menu() {
|
|
210 |
if ( current_user_can( 'manage_options' ) ) {
|
211 |
// Check License Key for Correct Link Color
|
212 |
$key = get_option( 'pmpro_license_key', '' );
|
213 |
-
if ( pmpro_license_isValid( $key, NULL
|
214 |
$span_color = '#33FF00';
|
215 |
} else {
|
216 |
$span_color = '#FF3333';
|
56 |
|
57 |
// Check License Key for Correct Link Color
|
58 |
$key = get_option( 'pmpro_license_key', '' );
|
59 |
+
if ( pmpro_license_isValid( $key, NULL ) ) {
|
60 |
$span_color = '#33FF00';
|
61 |
} else {
|
62 |
$span_color = '#FF3333';
|
210 |
if ( current_user_can( 'manage_options' ) ) {
|
211 |
// Check License Key for Correct Link Color
|
212 |
$key = get_option( 'pmpro_license_key', '' );
|
213 |
+
if ( pmpro_license_isValid( $key, NULL ) ) {
|
214 |
$span_color = '#33FF00';
|
215 |
} else {
|
216 |
$span_color = '#FF3333';
|
js/pmpro-stripe.js
CHANGED
@@ -1,3 +1,5 @@
|
|
|
|
|
|
1 |
// Wire up the form for Stripe.
|
2 |
jQuery( document ).ready( function( $ ) {
|
3 |
|
@@ -41,6 +43,11 @@ jQuery( document ).ready( function( $ ) {
|
|
41 |
}
|
42 |
}
|
43 |
|
|
|
|
|
|
|
|
|
|
|
44 |
$( '.pmpro_form' ).submit( function( event ) {
|
45 |
var name, address;
|
46 |
|
1 |
+
var pmpro_require_billing;
|
2 |
+
|
3 |
// Wire up the form for Stripe.
|
4 |
jQuery( document ).ready( function( $ ) {
|
5 |
|
43 |
}
|
44 |
}
|
45 |
|
46 |
+
// Set require billing var if not set yet.
|
47 |
+
if ( typeof pmpro_require_billing === 'undefined' ) {
|
48 |
+
pmpro_require_billing = pmproStripe.pmpro_require_billing;
|
49 |
+
}
|
50 |
+
|
51 |
$( '.pmpro_form' ).submit( function( event ) {
|
52 |
var name, address;
|
53 |
|
paid-memberships-pro.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Paid Memberships Pro
|
4 |
* Plugin URI: https://www.paidmembershipspro.com
|
5 |
* Description: The most complete member management and membership subscriptions plugin for WordPress.
|
6 |
-
* Version: 2.2.
|
7 |
* Author: Stranger Studios
|
8 |
* Author URI: https://www.strangerstudios.com
|
9 |
* Text Domain: paid-memberships-pro
|
@@ -16,7 +16,7 @@
|
|
16 |
*/
|
17 |
|
18 |
// version constant
|
19 |
-
define( 'PMPRO_VERSION', '2.2.
|
20 |
define( 'PMPRO_USER_AGENT', 'Paid Memberships Pro v' . PMPRO_VERSION . '; ' . site_url() );
|
21 |
define( 'PMPRO_MIN_PHP_VERSION', '5.6' );
|
22 |
|
3 |
* Plugin Name: Paid Memberships Pro
|
4 |
* Plugin URI: https://www.paidmembershipspro.com
|
5 |
* Description: The most complete member management and membership subscriptions plugin for WordPress.
|
6 |
+
* Version: 2.2.4
|
7 |
* Author: Stranger Studios
|
8 |
* Author URI: https://www.strangerstudios.com
|
9 |
* Text Domain: paid-memberships-pro
|
16 |
*/
|
17 |
|
18 |
// version constant
|
19 |
+
define( 'PMPRO_VERSION', '2.2.4' );
|
20 |
define( 'PMPRO_USER_AGENT', 'Paid Memberships Pro v' . PMPRO_VERSION . '; ' . site_url() );
|
21 |
define( 'PMPRO_MIN_PHP_VERSION', '5.6' );
|
22 |
|
preheaders/billing.php
CHANGED
@@ -1,7 +1,6 @@
|
|
1 |
<?php
|
2 |
|
3 |
-
global $wpdb, $current_user, $pmpro_msg, $pmpro_msgt;
|
4 |
-
global $bfirstname, $blastname, $baddress1, $baddress2, $bcity, $bstate, $bzipcode, $bcountry, $bphone, $bemail, $bconfirmemail, $CardType, $AccountNumber, $ExpirationMonth, $ExpirationYear;
|
5 |
|
6 |
if (! is_user_logged_in()) {
|
7 |
wp_redirect(pmpro_url('levels'));
|
@@ -31,6 +30,9 @@ if (empty($user_order->gateway)) {
|
|
31 |
$besecure = pmpro_getOption("use_ssl");
|
32 |
}
|
33 |
|
|
|
|
|
|
|
34 |
// Set the gateway, ideally using the gateway used to pay for the last order (if it exists)
|
35 |
$gateway = !empty( $user_order->gateway ) ? $user_order->gateway : pmpro_getOption("gateway");
|
36 |
|
1 |
<?php
|
2 |
|
3 |
+
global $wpdb, $current_user, $pmpro_msg, $pmpro_msgt, $bfirstname, $blastname, $baddress1, $baddress2, $bcity, $bstate, $bzipcode, $bcountry, $bphone, $bemail, $bconfirmemail, $CardType, $AccountNumber, $ExpirationMonth, $ExpirationYear, $pmpro_requirebilling;
|
|
|
4 |
|
5 |
if (! is_user_logged_in()) {
|
6 |
wp_redirect(pmpro_url('levels'));
|
30 |
$besecure = pmpro_getOption("use_ssl");
|
31 |
}
|
32 |
|
33 |
+
// this variable is checked sometimes to know if the page should show billing fields
|
34 |
+
$pmpro_requirebilling = true;
|
35 |
+
|
36 |
// Set the gateway, ideally using the gateway used to pay for the last order (if it exists)
|
37 |
$gateway = !empty( $user_order->gateway ) ? $user_order->gateway : pmpro_getOption("gateway");
|
38 |
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: strangerstudios
|
|
3 |
Tags: membership, memberships, member, members, ecommerce, e-commerce, paypal, stripe, braintree, authorize.net, payflow, restrict access, restrict content, directory
|
4 |
Requires at least: 4
|
5 |
Tested up to: 5.3
|
6 |
-
Stable tag: 2.2.
|
7 |
|
8 |
Get Paid with Paid Memberships Pro: The most complete member management and membership subscriptions plugin for your WordPress site.
|
9 |
|
@@ -128,6 +128,15 @@ Not sure? You can find out by doing a bit a research.
|
|
128 |
[View All Screenshots](http://www.paidmembershipspro.com/features/screenshots/)
|
129 |
|
130 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
131 |
= 2.2.2 - 2019-11-29 =
|
132 |
* BUG FIX: Fixed issue with member search.
|
133 |
* BUG FIX: Fixed issue with custom columns in the members list. (Thanks, Tim Sparks)
|
3 |
Tags: membership, memberships, member, members, ecommerce, e-commerce, paypal, stripe, braintree, authorize.net, payflow, restrict access, restrict content, directory
|
4 |
Requires at least: 4
|
5 |
Tested up to: 5.3
|
6 |
+
Stable tag: 2.2.4
|
7 |
|
8 |
Get Paid with Paid Memberships Pro: The most complete member management and membership subscriptions plugin for your WordPress site.
|
9 |
|
128 |
[View All Screenshots](http://www.paidmembershipspro.com/features/screenshots/)
|
129 |
|
130 |
== Changelog ==
|
131 |
+
= 2.2.4 - 2019-12-20 =
|
132 |
+
* BUG FIX: Fixed issue with the update billing page when using the Stripe gateway.
|
133 |
+
|
134 |
+
= 2.2.3 - 2019-12-09 =
|
135 |
+
* BUG FIX: Fixed issue where Stripe checkout failed for free levels that had their price adjusted through the donations or variable pricing add ons.
|
136 |
+
* BUG FIX: Fixed undeclared variables warnings in the members list.
|
137 |
+
* BUG FIX: Fixed the edit user links in the email sent to admins when cancelations have errors.
|
138 |
+
* REFACTOR: Removed some unused code from the members list class.
|
139 |
+
|
140 |
= 2.2.2 - 2019-11-29 =
|
141 |
* BUG FIX: Fixed issue with member search.
|
142 |
* BUG FIX: Fixed issue with custom columns in the members list. (Thanks, Tim Sparks)
|