Fix user_login fallbacks and remove email address

This commit is contained in:
champsupertramp
2016-01-18 17:46:06 +08:00
parent 518c8544ce
commit aef1d00a99
+24 -10
View File
@@ -34,15 +34,32 @@
function um_add_user_frontend($args){
global $ultimatemember;
extract($args);
if ( isset( $user_email ) && !isset($user_login) ) {
$user_login = $user_email;
}
if ( isset( $username ) && !isset($args['user_login']) ) {
$user_login = $username;
}
if ( ! empty( $first_name ) && ! empty( $last_name ) && ! isset( $user_login ) ) {
if ( um_get_option('permalink_base') == 'name' ) {
$user_login = rawurlencode( strtolower( str_replace(" ",".",$first_name." ".$last_name ) ) );
}else if ( um_get_option('permalink_base') == 'name_dash' ) {
$user_login = rawurlencode( strtolower( str_replace(" ","-",$first_name." ".$last_name ) ) );
}else if ( um_get_option('permalink_base') == 'name_plus' ) {
$user_login = strtolower( str_replace(" ","+",$first_name." ".$last_name ) );
}else{
$user_login = strtolower( str_replace(" ","",$first_name." ".$last_name ) );
}
}
$unique_userID = $ultimatemember->query->count_users() + 1;
if ( !isset( $user_login ) ) {
$user_login = 'user' . $unique_userID;
}
if ( isset( $username ) && is_email( $username ) ) {
$user_email = $username;
}
@@ -51,15 +68,11 @@
$user_password = $ultimatemember->validation->generate();
}
$unique_userID = $ultimatemember->query->count_users() + 1;
if( !isset($user_email) ) {
$user_email = 'nobody' . $unique_userID . '@' . get_bloginfo('name');
}
if ( !isset( $user_login ) ) {
$user_login = 'user' . $unique_userID;
}
$creds['user_login'] = $user_login;
$creds['user_password'] = $user_password;
@@ -67,7 +80,8 @@
$args['submitted'] = array_merge( $args['submitted'], $creds);
$args = array_merge($args, $creds);
do_action('um_before_new_user_register', $args);
$user_id = wp_create_user( $user_login, $user_password, $user_email );