Users: Use email_exists() in send_confirmation_on_profile_email(), instead of a manual query.

This gives us caching, and removes the use of the `$wpdb` global.

Props spacedmonkey, pento.
Fixes #45748.


Built from https://develop.svn.wordpress.org/trunk@44465


git-svn-id: http://core.svn.wordpress.org/trunk@44296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Gary Pendergast 2019-01-08 06:07:51 +00:00
parent fe837d19a7
commit 8d2ee69f9d
2 changed files with 3 additions and 4 deletions

View File

@ -2692,10 +2692,9 @@ function _wp_get_current_user() {
* @since 4.9.0 This function was moved from wp-admin/includes/ms.php so it's no longer Multisite specific. * @since 4.9.0 This function was moved from wp-admin/includes/ms.php so it's no longer Multisite specific.
* *
* @global WP_Error $errors WP_Error object. * @global WP_Error $errors WP_Error object.
* @global wpdb $wpdb WordPress database object.
*/ */
function send_confirmation_on_profile_email() { function send_confirmation_on_profile_email() {
global $errors, $wpdb; global $errors;
$current_user = wp_get_current_user(); $current_user = wp_get_current_user();
if ( ! is_object( $errors ) ) { if ( ! is_object( $errors ) ) {
@ -2719,7 +2718,7 @@ function send_confirmation_on_profile_email() {
return; return;
} }
if ( $wpdb->get_var( $wpdb->prepare( "SELECT user_email FROM {$wpdb->users} WHERE user_email=%s", $_POST['email'] ) ) ) { if ( email_exists( $_POST['email'] ) ) {
$errors->add( $errors->add(
'user_email', 'user_email',
__( '<strong>ERROR</strong>: The email address is already used.' ), __( '<strong>ERROR</strong>: The email address is already used.' ),

View File

@ -13,7 +13,7 @@
* *
* @global string $wp_version * @global string $wp_version
*/ */
$wp_version = '5.1-alpha-44464'; $wp_version = '5.1-alpha-44465';
/** /**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.