get_error_data(); if ( isset( $error_data['unique'] ) && false === $error_data['unique'] ) { $user_exists = true; } else { $user_exists = isset( $_POST['user_login'] ) && $_POST['user_login'] && (bool) bb_get_user( $_POST['user_login'], array( 'by' => 'login' ) ); } unset( $error_data ); if ( 'post' == strtolower( $_SERVER['REQUEST_METHOD'] ) ) { // If the user doesn't exist then add that error. if ( !$user_exists ) { if ( isset( $_POST['user_login'] ) && $_POST['user_login'] ) { $bb_login_error->add( 'user_login', __( 'User does not exist.' ) ); } else { $bb_login_error->add( 'user_login', $email_login ? __( 'Enter a username or email address.' ) : __( 'Enter a username.' ) ); } } // If the password was wrong then add that error. if ( !$bb_login_error->get_error_code() ) { $bb_login_error->add( 'password', __( 'Incorrect password.' ) ); } } // If trying to log in with email address, don't leak whether or not email address exists in the db. // is_email() is not perfect, usernames can be valid email addresses potentially. if ( $email_login && $bb_login_error->get_error_codes() && false !== is_email( $_POST['user_login'] ) ) { $bb_login_error = new WP_Error( 'user_login', __( 'Username and Password do not match.' ) ); } // Sanitze variables for display. $user_login = esc_attr( sanitize_user( @$_POST['user_login'], true ) ); $remember_checked = @$_POST['remember'] ? ' checked="checked"' : ''; $re = esc_url( $re ); $re = $redirect_to = esc_attr( $re ); // Load the template. bb_load_template( 'login.php', array( 'user_exists', 'user_login', 'remember_checked', 'redirect_to', 're', 'bb_login_error' ) ); exit;