updated plugin Easy Digital Downloads version 3.1.1.2

This commit is contained in:
2023-03-17 22:34:04 +00:00
committed by Gitium
parent e8a66564bd
commit 19e086d1c4
647 changed files with 20986 additions and 27305 deletions

View File

@ -676,13 +676,21 @@ function edd_purchase_form_validate_new_user() {
// Email address is unsafe (multisite only)
} elseif ( is_multisite() && is_email_address_unsafe( $user_email ) ) {
edd_set_error( 'email_unsafe', __( 'You cannot use that email address to signup at this time.', 'easy-digital-downloads' ) );
// Check if email exists
} elseif ( ( true === $registering_new_user ) && email_exists( $user_email ) ) {
edd_set_error( 'email_used', __( 'Email already used. Login or use a different email to complete your purchase.', 'easy-digital-downloads' ) );
// Add email to valid user data
} elseif ( true === $registering_new_user ) {
// Check if email exists.
$customers = edd_get_customers(
array(
'email' => $user_email,
'user_id__not_in' => array( null ),
)
);
if ( email_exists( $user_email ) || ! empty( $customers ) ) {
edd_set_error( 'email_used', __( 'Email already used. Login or use a different email to complete your purchase.', 'easy-digital-downloads' ) );
} else {
$valid_user_data['user_email'] = $user_email;
}
} else {
// Add email to valid user data.
$valid_user_data['user_email'] = $user_email;
}
@ -731,11 +739,11 @@ function edd_purchase_form_validate_user_login() {
// Start an array to collect valid user data.
$valid_user_data = array(
'user_id' => 0
'user_id' => 0,
);
$user_login = ! empty( $_POST['edd_user_login'] ) ? sanitize_text_field( $_POST['edd_user_login'] ) : '';
$user_pass = ! empty( $_POST['edd_user_pass'] ) ? sanitize_text_field( $_POST['edd_user_pass'] ) : '';
$user_pass = ! empty( $_POST['edd_user_pass'] ) ? $_POST['edd_user_pass'] : '';
// Username.
if ( empty( $user_login ) && edd_no_guest_checkout() ) {
@ -747,19 +755,17 @@ function edd_purchase_form_validate_user_login() {
if ( ! $user instanceof WP_User ) {
return $valid_user_data;
} else {
// Re-populate the valid user data array.
$valid_user_data = array(
'user_id' => $user->ID,
'user_login' => $user->user_login,
'user_email' => $user->user_email,
'user_first' => $user->first_name,
'user_last' => $user->last_name,
'user_pass' => $user_pass,
);
}
return (array) $valid_user_data;
// Populate the valid user data array.
return array(
'user_id' => $user->ID,
'user_login' => $user->user_login,
'user_email' => $user->user_email,
'user_first' => $user->first_name,
'user_last' => $user->last_name,
'user_pass' => $user_pass,
);
}
/**
@ -1280,6 +1286,22 @@ function edd_check_purchase_email( $valid_data, $posted ) {
}
add_action( 'edd_checkout_error_checks', 'edd_check_purchase_email', 10, 2 );
/**
* Checks the length of the user's email address.
*
* @since 3.1.0.5
* @param array $valid_data The array of validated data.
* @param array $posted_data The array of posted data.
* @return void
*/
function edd_check_purchase_email_length( $valid_data, $posted_data ) {
// Customer emails are limited to 100 characters.
if ( ! empty( $posted_data['edd_email'] ) && strlen( $posted_data['edd_email'] ) > 100 ) {
edd_set_error( 'email_length', __( 'Your email address must be shorter than 100 characters.', 'easy-digital-downloads' ) );
}
}
add_action( 'edd_checkout_error_checks', 'edd_check_purchase_email_length', 10, 2 );
/**
* Process a straight-to-gateway purchase
*