session->get( 'edd_success_errors' );
	if ( $errors || $successes ) {
		echo edd_build_errors_html( $errors );
		echo edd_build_successes_html( $successes );
		edd_clear_errors();
	}
}
add_action( 'edd_purchase_form_before_submit', 'edd_print_errors' );
add_action( 'edd_ajax_checkout_errors', 'edd_print_errors' );
add_action( 'edd_print_errors', 'edd_print_errors' );
/**
 * Formats error messages and returns an HTML string.
 *
 * @param array $errors
 *
 * @since 2.11
 * @return string
 */
function edd_build_errors_html( $errors ) {
	$error_html = '';
	$classes = apply_filters( 'edd_error_class', array(
		'edd_errors', 'edd-alert', 'edd-alert-error'
	) );
	if ( ! empty( $errors ) && is_array( $errors ) ) {
		$error_html .= '
';
		// Loop error codes and display errors
		foreach ( $errors as $error_id => $error ) {
			$error_html .= '
' . __( 'Error', 'easy-digital-downloads' ) . ': ' . $error . '
';
		}
		$error_html .= '
';
	foreach ( $successes as $id => $message ) {
		$html .= '
';
		$html .= '' . esc_html__( 'Success', 'easy-digital-downloads' ) . ': ';
		$html .= $message;
		$html .= '
';
	}
	$html .= '