From 2107336cf9b58113e3a99ebb7c521d053a6335eb Mon Sep 17 00:00:00 2001 From: ashubawork Date: Thu, 7 Dec 2023 13:36:51 +0200 Subject: [PATCH 1/7] - change placeholders for set password --- includes/core/class-mail.php | 22 ++++++++++++++++++++++ includes/core/class-user.php | 10 ++++++++-- includes/core/um-actions-register.php | 9 ++++++--- templates/email/welcome_email.php | 2 +- 4 files changed, 37 insertions(+), 6 deletions(-) diff --git a/includes/core/class-mail.php b/includes/core/class-mail.php index 8bd1acd7..af429cf2 100644 --- a/includes/core/class-mail.php +++ b/includes/core/class-mail.php @@ -423,6 +423,9 @@ if ( ! class_exists( 'um\core\Mail' ) ) { add_filter( 'um_template_tags_patterns_hook', array( UM()->mail(), 'add_placeholder' ) ); add_filter( 'um_template_tags_replaces_hook', array( UM()->mail(), 'add_replace_placeholder' ) ); + if ( array_key_exists( 'generated_pass', $args ) && 1 === absint( $args['generated_pass'] ) ) { + add_filter( 'um_template_tags_replaces_hook', array( UM()->mail(), 'add_replace_placeholder_set_password' ) ); + } /** * Filters email notification subject. @@ -621,6 +624,7 @@ if ( ! class_exists( 'um\core\Mail' ) ) { $placeholders[] = '{admin_email}'; $placeholders[] = '{submitted_registration}'; $placeholders[] = '{login_url}'; + $placeholders[] = '{login_button}'; $placeholders[] = '{password}'; $placeholders[] = '{account_activation_link}'; return $placeholders; @@ -639,9 +643,27 @@ if ( ! class_exists( 'um\core\Mail' ) ) { $replace_placeholders[] = um_admin_email(); $replace_placeholders[] = um_user_submitted_registration_formatted(); $replace_placeholders[] = um_get_core_page( 'login' ); + $replace_placeholders[] = esc_html__( 'Login to our site', 'ultimate-member' ); $replace_placeholders[] = esc_html__( 'Your set password', 'ultimate-member' ); $replace_placeholders[] = um_user( 'account_activation_link' ); return $replace_placeholders; } + + + public function add_replace_placeholder_set_password( $replace_placeholders ) { + $key = array_search( um_get_core_page( 'login' ), $replace_placeholders, true ); + if ( false !== $key ) { + $url = UM()->password()->reset_url(); + $replace_placeholders[ $key ] = add_query_arg( array( 'set_pass' => 'new_user' ), $url ); + } + + $button = esc_html__( 'Login to our site', 'ultimate-member' ); + $button_key = array_search( $button, $replace_placeholders , true ); + if ( false !== $key ) { + $url = UM()->password()->reset_url(); + $replace_placeholders[ $button_key ] = esc_html__( 'Set your password', 'ultimate-member' ); + } + return $replace_placeholders; + } } } diff --git a/includes/core/class-user.php b/includes/core/class-user.php index d4725da2..c47690f3 100644 --- a/includes/core/class-user.php +++ b/includes/core/class-user.php @@ -1690,7 +1690,7 @@ if ( ! class_exists( 'um\core\User' ) ) { ?> * */ - function approve( $repeat = true ) { + function approve( $repeat = true, $args = array() ) { $user_id = um_user( 'ID' ); if ( ! $repeat ) { @@ -1712,7 +1712,13 @@ if ( ! class_exists( 'um\core\User' ) ) { } else { //$userdata = get_userdata( $user_id ); //get_password_reset_key( $userdata ); - UM()->mail()->send( um_user( 'user_email' ), 'welcome_email' ); + $welcome_email_args = array(); + if ( true === (bool) $args['generated_pass'] ) { + $welcome_email_args = array( + 'generated_pass' => 1, + ); + } + UM()->mail()->send( um_user( 'user_email' ), 'welcome_email', $welcome_email_args ); } $this->set_status( 'approved' ); diff --git a/includes/core/um-actions-register.php b/includes/core/um-actions-register.php index 5f8a8404..f85c4ad4 100644 --- a/includes/core/um-actions-register.php +++ b/includes/core/um-actions-register.php @@ -8,12 +8,12 @@ if ( ! defined( 'ABSPATH' ) ) { * * @param int $user_id */ -function um_post_registration_approved_hook( $user_id ) { +function um_post_registration_approved_hook( $user_id, $args ) { um_fetch_user( $user_id ); - UM()->user()->approve(); + UM()->user()->approve( true, $args ); } -add_action( 'um_post_registration_approved_hook', 'um_post_registration_approved_hook' ); +add_action( 'um_post_registration_approved_hook', 'um_post_registration_approved_hook', 10, 2 ); /** * Account needs email validation. @@ -456,6 +456,9 @@ function um_submit_form_register( $args, $form_data ) { 'user_password' => $user_password, 'user_email' => trim( $user_email ), ); + if ( ! isset( $args['user_password'] ) ) { + $credentials['generated_pass'] = true; + } // @todo test when ready maybe remove if ( ! empty( $args['submitted'] ) ) { diff --git a/templates/email/welcome_email.php b/templates/email/welcome_email.php index b9807834..ac4ab960 100644 --- a/templates/email/welcome_email.php +++ b/templates/email/welcome_email.php @@ -23,7 +23,7 @@ if ( ! defined( 'ABSPATH' ) ) {
Thank you for signing up!Your account is now active.
-
Login to our site
+
{login_button}
If you have any problems, please contact us at {admin_email}
From d9021373ce86eeed5926545302813d2fba6db421 Mon Sep 17 00:00:00 2001 From: ashubawork Date: Tue, 16 Jan 2024 14:00:22 +0200 Subject: [PATCH 2/7] - add meta to user --- includes/class-config.php | 4 ++-- includes/core/class-mail.php | 29 ++++++++------------------- includes/core/class-password.php | 5 +++++ includes/core/class-user.php | 12 +++-------- includes/core/um-actions-register.php | 17 +++++++++------- templates/email/welcome_email.php | 4 ++-- 6 files changed, 30 insertions(+), 41 deletions(-) diff --git a/includes/class-config.php b/includes/class-config.php index 2b570c3b..27e2f6e6 100644 --- a/includes/class-config.php +++ b/includes/class-config.php @@ -334,8 +334,8 @@ if ( ! class_exists( 'um\Config' ) ) { 'subject' => 'Welcome to {site_name}!', 'body' => 'Hi {display_name},

' . 'Thank you for signing up with {site_name}! Your account is now active.

' . - 'To login please visit the following url:

' . - '{login_url}

' . + '{action_title}:

' . + '{action_url}

' . 'Your account e-mail: {email}
' . 'Your account username: {username}

' . 'If you have any problems, please contact us at {admin_email}

' . diff --git a/includes/core/class-mail.php b/includes/core/class-mail.php index af429cf2..c71d194e 100644 --- a/includes/core/class-mail.php +++ b/includes/core/class-mail.php @@ -423,9 +423,6 @@ if ( ! class_exists( 'um\core\Mail' ) ) { add_filter( 'um_template_tags_patterns_hook', array( UM()->mail(), 'add_placeholder' ) ); add_filter( 'um_template_tags_replaces_hook', array( UM()->mail(), 'add_replace_placeholder' ) ); - if ( array_key_exists( 'generated_pass', $args ) && 1 === absint( $args['generated_pass'] ) ) { - add_filter( 'um_template_tags_replaces_hook', array( UM()->mail(), 'add_replace_placeholder_set_password' ) ); - } /** * Filters email notification subject. @@ -624,9 +621,10 @@ if ( ! class_exists( 'um\core\Mail' ) ) { $placeholders[] = '{admin_email}'; $placeholders[] = '{submitted_registration}'; $placeholders[] = '{login_url}'; - $placeholders[] = '{login_button}'; $placeholders[] = '{password}'; $placeholders[] = '{account_activation_link}'; + $placeholders[] = '{action_url}'; + $placeholders[] = '{action_title}'; return $placeholders; } @@ -643,25 +641,14 @@ if ( ! class_exists( 'um\core\Mail' ) ) { $replace_placeholders[] = um_admin_email(); $replace_placeholders[] = um_user_submitted_registration_formatted(); $replace_placeholders[] = um_get_core_page( 'login' ); - $replace_placeholders[] = esc_html__( 'Login to our site', 'ultimate-member' ); $replace_placeholders[] = esc_html__( 'Your set password', 'ultimate-member' ); $replace_placeholders[] = um_user( 'account_activation_link' ); - return $replace_placeholders; - } - - - public function add_replace_placeholder_set_password( $replace_placeholders ) { - $key = array_search( um_get_core_page( 'login' ), $replace_placeholders, true ); - if ( false !== $key ) { - $url = UM()->password()->reset_url(); - $replace_placeholders[ $key ] = add_query_arg( array( 'set_pass' => 'new_user' ), $url ); - } - - $button = esc_html__( 'Login to our site', 'ultimate-member' ); - $button_key = array_search( $button, $replace_placeholders , true ); - if ( false !== $key ) { - $url = UM()->password()->reset_url(); - $replace_placeholders[ $button_key ] = esc_html__( 'Set your password', 'ultimate-member' ); + if ( true === (bool) get_user_meta( um_user( 'ID' ), 'um_password_generated', true ) ) { + $replace_placeholders[] = um_user( 'password_reset_link' ); + $replace_placeholders[] = esc_html__( 'Set your password', 'ultimate-member' ); + } else { + $replace_placeholders[] = um_get_core_page( 'login' ); + $replace_placeholders[] = esc_html__( 'Login to our site', 'ultimate-member' ); } return $replace_placeholders; } diff --git a/includes/core/class-password.php b/includes/core/class-password.php index a5e1c882..06d69997 100644 --- a/includes/core/class-password.php +++ b/includes/core/class-password.php @@ -599,6 +599,11 @@ if ( ! class_exists( 'um\core\Password' ) ) { } $this->setcookie( $rp_cookie, false ); + $password_generated = get_user_meta( $user->ID, 'um_password_generated', true ); + if ( $password_generated ) { + delete_user_meta( $user->ID, 'um_password_generated' ); + } + /** * UM hook * diff --git a/includes/core/class-user.php b/includes/core/class-user.php index c47690f3..9a96da1f 100644 --- a/includes/core/class-user.php +++ b/includes/core/class-user.php @@ -1690,7 +1690,7 @@ if ( ! class_exists( 'um\core\User' ) ) { ?> * */ - function approve( $repeat = true, $args = array() ) { + public function approve( $repeat = true ) { $user_id = um_user( 'ID' ); if ( ! $repeat ) { @@ -1702,7 +1702,7 @@ if ( ! class_exists( 'um\core\User' ) ) { delete_option( "um_cache_userdata_{$user_id}" ); - if ( um_user( 'account_status' ) == 'awaiting_admin_review' ) { + if ( 'awaiting_admin_review' === um_user( 'account_status' ) ) { $userdata = get_userdata( $user_id ); $this->maybe_generate_password_reset_key( $userdata ); @@ -1712,13 +1712,7 @@ if ( ! class_exists( 'um\core\User' ) ) { } else { //$userdata = get_userdata( $user_id ); //get_password_reset_key( $userdata ); - $welcome_email_args = array(); - if ( true === (bool) $args['generated_pass'] ) { - $welcome_email_args = array( - 'generated_pass' => 1, - ); - } - UM()->mail()->send( um_user( 'user_email' ), 'welcome_email', $welcome_email_args ); + UM()->mail()->send( um_user( 'user_email' ), 'welcome_email' ); } $this->set_status( 'approved' ); diff --git a/includes/core/um-actions-register.php b/includes/core/um-actions-register.php index f85c4ad4..14938c8f 100644 --- a/includes/core/um-actions-register.php +++ b/includes/core/um-actions-register.php @@ -8,12 +8,12 @@ if ( ! defined( 'ABSPATH' ) ) { * * @param int $user_id */ -function um_post_registration_approved_hook( $user_id, $args ) { +function um_post_registration_approved_hook( $user_id ) { um_fetch_user( $user_id ); - UM()->user()->approve( true, $args ); + UM()->user()->approve( true ); } -add_action( 'um_post_registration_approved_hook', 'um_post_registration_approved_hook', 10, 2 ); +add_action( 'um_post_registration_approved_hook', 'um_post_registration_approved_hook', 10, 1 ); /** * Account needs email validation. @@ -417,8 +417,10 @@ function um_submit_form_register( $args, $form_data ) { $user_email = $args['user_email']; } + $generate_password = false; if ( ! isset( $args['user_password'] ) ) { - $user_password = UM()->validation()->generate( 8 ); + $generate_password = true; + $user_password = UM()->validation()->generate( 8 ); } else { $user_password = $args['user_password']; } @@ -456,9 +458,6 @@ function um_submit_form_register( $args, $form_data ) { 'user_password' => $user_password, 'user_email' => trim( $user_email ), ); - if ( ! isset( $args['user_password'] ) ) { - $credentials['generated_pass'] = true; - } // @todo test when ready maybe remove if ( ! empty( $args['submitted'] ) ) { @@ -523,6 +522,10 @@ function um_submit_form_register( $args, $form_data ) { return; } + if ( true === $generate_password ) { + update_user_meta( $user_id, 'um_password_generated', true ); + } + /** * Fires after complete UM user registration. * diff --git a/templates/email/welcome_email.php b/templates/email/welcome_email.php index ac4ab960..ffb7c6f8 100644 --- a/templates/email/welcome_email.php +++ b/templates/email/welcome_email.php @@ -21,9 +21,9 @@ if ( ! defined( 'ABSPATH' ) ) {
-
Thank you for signing up!Your account is now active.
+
Thank you for signing up! Your account is now active.
-
{login_button}
+
{action_title}
If you have any problems, please contact us at {admin_email}
From c8ddd5d23c3face99725accb604a9ef022c59268 Mon Sep 17 00:00:00 2001 From: ashubawork Date: Tue, 16 Jan 2024 16:09:26 +0200 Subject: [PATCH 3/7] - fix emails placeholders --- includes/core/class-mail.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/includes/core/class-mail.php b/includes/core/class-mail.php index c71d194e..965e36dd 100644 --- a/includes/core/class-mail.php +++ b/includes/core/class-mail.php @@ -643,13 +643,15 @@ if ( ! class_exists( 'um\core\Mail' ) ) { $replace_placeholders[] = um_get_core_page( 'login' ); $replace_placeholders[] = esc_html__( 'Your set password', 'ultimate-member' ); $replace_placeholders[] = um_user( 'account_activation_link' ); - if ( true === (bool) get_user_meta( um_user( 'ID' ), 'um_password_generated', true ) ) { - $replace_placeholders[] = um_user( 'password_reset_link' ); - $replace_placeholders[] = esc_html__( 'Set your password', 'ultimate-member' ); - } else { + + if ( 'pending' === um_user( 'status' ) || ! get_user_meta( um_user( 'ID' ), 'um_password_generated', true ) ) { $replace_placeholders[] = um_get_core_page( 'login' ); $replace_placeholders[] = esc_html__( 'Login to our site', 'ultimate-member' ); + } else { + $replace_placeholders[] = um_user( 'password_reset_link' ); + $replace_placeholders[] = esc_html__( 'Set your password', 'ultimate-member' ); } + return $replace_placeholders; } } From 9e61abfa7a6e5b5edec7dca0cd2aaf241f158294 Mon Sep 17 00:00:00 2001 From: ashubawork Date: Wed, 17 Jan 2024 13:24:40 +0200 Subject: [PATCH 4/7] - change password text --- templates/password-change.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/templates/password-change.php b/templates/password-change.php index 46bf34a6..322a2e65 100644 --- a/templates/password-change.php +++ b/templates/password-change.php @@ -57,12 +57,16 @@ if ( ! defined( 'ABSPATH' ) ) { foreach ( $fields as $key => $data ) { $output .= UM()->fields()->edit_field( $key, $data ); } - echo $output; ?> + echo wp_kses( $output, UM()->get_allowed_html( 'templates' ) ); ?>
- + + + + +
From 7ce364f87414e57667af678d3e230f794f275296 Mon Sep 17 00:00:00 2001 From: ashubawork Date: Wed, 17 Jan 2024 13:40:53 +0200 Subject: [PATCH 5/7] - small wpcs fix --- templates/password-change.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/templates/password-change.php b/templates/password-change.php index 322a2e65..9834b066 100644 --- a/templates/password-change.php +++ b/templates/password-change.php @@ -57,7 +57,8 @@ if ( ! defined( 'ABSPATH' ) ) { foreach ( $fields as $key => $data ) { $output .= UM()->fields()->edit_field( $key, $data ); } - echo wp_kses( $output, UM()->get_allowed_html( 'templates' ) ); ?> + echo wp_kses( $output, UM()->get_allowed_html( 'templates' ) ); + ?>
From 205a3ea9bce39b62ff26e377c74bfc84dc7dd8a7 Mon Sep 17 00:00:00 2001 From: Mykyta Synelnikov Date: Wed, 17 Jan 2024 16:06:58 +0200 Subject: [PATCH 6/7] - reviewed #1428; --- includes/core/class-mail.php | 3 ++- includes/core/class-password.php | 15 ++++++++++++--- includes/core/um-actions-register.php | 6 +++--- templates/email/welcome_email.php | 2 +- templates/password-change.php | 5 +++-- 5 files changed, 21 insertions(+), 10 deletions(-) diff --git a/includes/core/class-mail.php b/includes/core/class-mail.php index 965e36dd..349aae5f 100644 --- a/includes/core/class-mail.php +++ b/includes/core/class-mail.php @@ -644,7 +644,8 @@ if ( ! class_exists( 'um\core\Mail' ) ) { $replace_placeholders[] = esc_html__( 'Your set password', 'ultimate-member' ); $replace_placeholders[] = um_user( 'account_activation_link' ); - if ( 'pending' === um_user( 'status' ) || ! get_user_meta( um_user( 'ID' ), 'um_password_generated', true ) ) { + $set_password_required = get_user_meta( um_user( 'ID' ), 'um_set_password_required', true ); + if ( empty( $set_password_required ) || 'pending' === um_user( 'status' ) ) { $replace_placeholders[] = um_get_core_page( 'login' ); $replace_placeholders[] = esc_html__( 'Login to our site', 'ultimate-member' ); } else { diff --git a/includes/core/class-password.php b/includes/core/class-password.php index 06d69997..b76de3b5 100644 --- a/includes/core/class-password.php +++ b/includes/core/class-password.php @@ -155,6 +155,7 @@ if ( ! class_exists( 'um\core\Password' ) ) { if ( false !== $this->change_password ) { // then COOKIE are valid then get data from them and populate hidden fields for the password reset form + $args['rp_mode'] = 'pw_change'; $args['template'] = 'password-change'; $args['rp_key'] = ''; $rp_cookie = 'wp-resetpass-' . COOKIEHASH; @@ -163,6 +164,14 @@ if ( ! class_exists( 'um\core\Password' ) ) { $args['login'] = $rp_login; $args['rp_key'] = $rp_key; + + $rp_user_obj = get_user_by( 'login', $rp_login ); + if ( false !== $rp_user_obj ) { + $set_password_required = get_user_meta( $rp_user_obj->ID, 'um_set_password_required', true ); + if ( ! empty( $set_password_required ) ) { + $args['rp_mode'] = 'pw_set'; + } + } } } @@ -599,9 +608,9 @@ if ( ! class_exists( 'um\core\Password' ) ) { } $this->setcookie( $rp_cookie, false ); - $password_generated = get_user_meta( $user->ID, 'um_password_generated', true ); - if ( $password_generated ) { - delete_user_meta( $user->ID, 'um_password_generated' ); + $password_generated = get_user_meta( $user->ID, 'um_set_password_required', true ); + if ( ! empty( $password_generated ) ) { + delete_user_meta( $user->ID, 'um_set_password_required' ); } /** diff --git a/includes/core/um-actions-register.php b/includes/core/um-actions-register.php index 14938c8f..5d4bf6ac 100644 --- a/includes/core/um-actions-register.php +++ b/includes/core/um-actions-register.php @@ -11,9 +11,9 @@ if ( ! defined( 'ABSPATH' ) ) { function um_post_registration_approved_hook( $user_id ) { um_fetch_user( $user_id ); - UM()->user()->approve( true ); + UM()->user()->approve(); } -add_action( 'um_post_registration_approved_hook', 'um_post_registration_approved_hook', 10, 1 ); +add_action( 'um_post_registration_approved_hook', 'um_post_registration_approved_hook' ); /** * Account needs email validation. @@ -523,7 +523,7 @@ function um_submit_form_register( $args, $form_data ) { } if ( true === $generate_password ) { - update_user_meta( $user_id, 'um_password_generated', true ); + update_user_meta( $user_id, 'um_set_password_required', true ); } /** diff --git a/templates/email/welcome_email.php b/templates/email/welcome_email.php index ffb7c6f8..b81eb789 100644 --- a/templates/email/welcome_email.php +++ b/templates/email/welcome_email.php @@ -5,7 +5,7 @@ * * This template can be overridden by copying it to {your-theme}/ultimate-member/email/welcome_email.php * - * @version 2.6.1 + * @version 2.8.3 */ if ( ! defined( 'ABSPATH' ) ) { exit; diff --git a/templates/password-change.php b/templates/password-change.php index 9834b066..98c6e3b7 100644 --- a/templates/password-change.php +++ b/templates/password-change.php @@ -6,8 +6,9 @@ * * Call: function ultimatemember_password() * - * @version 2.7.0 + * @version 2.8.3 * + * @var string $rp_mode * @var string $mode * @var string $rp_key * @var int $form_id @@ -63,7 +64,7 @@ if ( ! defined( 'ABSPATH' ) ) {
- + From f026f44323d37d9dfdf4bda20a6fefd8d0cbc2ce Mon Sep 17 00:00:00 2001 From: Mykyta Synelnikov Date: Thu, 18 Jan 2024 11:30:49 +0200 Subject: [PATCH 7/7] - reviewed #1428; --- includes/core/class-password.php | 4 +- includes/core/class-permalinks.php | 10 ++++- includes/core/um-actions-core.php | 3 +- templates/password-change.php | 67 ++++++++++++------------------ 4 files changed, 40 insertions(+), 44 deletions(-) diff --git a/includes/core/class-password.php b/includes/core/class-password.php index b76de3b5..77f4c5cb 100644 --- a/includes/core/class-password.php +++ b/includes/core/class-password.php @@ -608,8 +608,8 @@ if ( ! class_exists( 'um\core\Password' ) ) { } $this->setcookie( $rp_cookie, false ); - $password_generated = get_user_meta( $user->ID, 'um_set_password_required', true ); - if ( ! empty( $password_generated ) ) { + $set_password_required = get_user_meta( $user->ID, 'um_set_password_required', true ); + if ( ! empty( $set_password_required ) ) { delete_user_meta( $user->ID, 'um_set_password_required' ); } diff --git a/includes/core/class-permalinks.php b/includes/core/class-permalinks.php index 48779ce8..5d66a799 100644 --- a/includes/core/class-permalinks.php +++ b/includes/core/class-permalinks.php @@ -125,8 +125,14 @@ if ( ! class_exists( 'um\core\Permalinks' ) ) { wp_die( __( 'This activation link is expired.', 'ultimate-member' ) ); } + $redirect = um_get_core_page( 'login', 'account_active' ); + $set_password_required = get_user_meta( $user_id, 'um_set_password_required', true ); + um_fetch_user( $user_id ); UM()->user()->approve(); + if ( ! empty( $set_password_required ) ) { + $redirect = um_user( 'password_reset_link' ); + } um_reset_user(); $user_role = UM()->roles()->get_priority_user_role( $user_id ); @@ -167,7 +173,9 @@ if ( ! class_exists( 'um\core\Permalinks' ) ) { */ do_action( 'um_after_email_confirmation', $user_id ); - $redirect = empty( $user_role_data['url_email_activate'] ) ? um_get_core_page( 'login', 'account_active' ) : trim( $user_role_data['url_email_activate'] ); // Role setting "URL redirect after e-mail activation" + if ( empty( $set_password_required ) ) { + $redirect = empty( $user_role_data['url_email_activate'] ) ? um_get_core_page( 'login', 'account_active' ) : trim( $user_role_data['url_email_activate'] ); // Role setting "URL redirect after e-mail activation" + } $redirect = apply_filters( 'um_after_email_confirmation_redirect', $redirect, $user_id, $login ); exit( wp_redirect( $redirect ) ); diff --git a/includes/core/um-actions-core.php b/includes/core/um-actions-core.php index 9c195a81..8779fafc 100644 --- a/includes/core/um-actions-core.php +++ b/includes/core/um-actions-core.php @@ -100,10 +100,11 @@ function um_action_request_process() { wp_die( esc_html__( 'You do not have permission to make this action.', 'ultimate-member' ) ); } + um_fetch_user( $uid ); + add_filter( 'um_template_tags_patterns_hook', array( UM()->password(), 'add_placeholder' ), 10, 1 ); add_filter( 'um_template_tags_replaces_hook', array( UM()->password(), 'add_replace_placeholder' ), 10, 1 ); - um_fetch_user( $uid ); UM()->user()->approve(); exit( wp_redirect( UM()->permalinks()->get_current_url( true ) ) ); break; diff --git a/templates/password-change.php b/templates/password-change.php index 98c6e3b7..6ad5b9c1 100644 --- a/templates/password-change.php +++ b/templates/password-change.php @@ -8,18 +8,16 @@ * * @version 2.8.3 * - * @var string $rp_mode - * @var string $mode - * @var string $rp_key - * @var int $form_id - * @var array $args + * @var string $rp_mode 'pw_set' or 'pw_change' for display it differently. + * @var string $rp_key Reset password key. + * @var array $args Change password arguments */ if ( ! defined( 'ABSPATH' ) ) { exit; } ?> -
+
@@ -30,23 +28,18 @@ if ( ! defined( 'ABSPATH' ) ) { Add hidden field at the start of the change password form. + * function my_custom_change_password_page_hidden_fields( $cp_args ) { + * echo '' * } - * ?> + * add_action( 'um_change_password_page_hidden_fields', 'my_custom_change_password_page_hidden_fields' ); */ do_action( 'um_change_password_page_hidden_fields', $args ); @@ -58,11 +51,12 @@ if ( ! defined( 'ABSPATH' ) ) { foreach ( $fields as $key => $data ) { $output .= UM()->fields()->edit_field( $key, $data ); } - echo wp_kses( $output, UM()->get_allowed_html( 'templates' ) ); + if ( $output ) { + echo wp_kses( $output, UM()->get_allowed_html( 'templates' ) ); + } ?>
-
@@ -72,29 +66,22 @@ if ( ! defined( 'ABSPATH' ) ) {
-
Add hidden field at the start of the change password form. + * function my_custom_change_password_form( $cp_args ) { + * echo '' * } - * ?> + * add_action( 'um_change_password_form', 'my_custom_change_password_form' ); */ do_action( 'um_change_password_form', $args ); /** This action is documented in includes/core/um-actions-profile.php */