nonceText ) ) { $response = [ 'loggedin' => false, 'redirectto' => $checkout_url, 'message_type' => 'error', 'message' => esc_html__( 'Maybe You are not a real user.', 'shopbuilder' ), ]; $has_error = true; } if ( is_user_logged_in() ) { $response = [ 'loggedin' => true, 'redirectto' => $checkout_url, 'message_type' => 'info', 'message' => esc_html__( 'Already Logged In.', 'shopbuilder' ), ]; $has_error = true; } if ( empty( $_POST['username'] ) || empty( $_POST['password'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing $response = [ 'loggedin' => false, 'redirectto' => $checkout_url, 'message_type' => 'error', 'message' => esc_html__( 'Incorrect User Or password.', 'shopbuilder' ), ]; $has_error = true; } if ( ! $has_error ) { $info['user_login'] = sanitize_text_field( $_POST['username'] ?? '' ); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.ValidatedSanitizedInput.MissingUnslash $info['user_password'] = sanitize_text_field( $_POST['password'] ?? '' ); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.ValidatedSanitizedInput.MissingUnslash $info['remember'] = ! empty( $_POST['rememberme'] ) ? sanitize_text_field( $_POST['rememberme'] ) : false; // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.ValidatedSanitizedInput.MissingUnslash $user_signon = wp_signon( $info, false ); if ( is_wp_error( $user_signon ) ) { $response = [ 'loggedin' => false, 'redirectto' => $checkout_url, 'message_type' => 'error', 'message' => esc_html__( 'Login Failed.', 'shopbuilder' ), ]; } else { $response = [ 'loggedin' => true, 'redirectto' => $checkout_url, 'message_type' => 'success', 'message' => esc_html__( 'Login successful.', 'shopbuilder' ), ]; } } wc_add_notice( $response['message'], $response['message_type'] ); wp_send_json( $response ); die(); } }