HEX
Server: nginx/1.18.0
System: Linux vps-9dcdb12e 5.15.0-176-generic #186-Ubuntu SMP Fri Mar 13 11:01:42 UTC 2026 x86_64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.24
Disabled: exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
Upload Files
File: /var/www/brutals.pl/wp-content/plugins/wpforms-lite/src/Integrations/Square/CurlCompatibility.php
<?php

namespace WPForms\Integrations\Square;

/**
 * Compatibility with cURL extension.
 * Square SDK requires cURL to be enabled to work correctly.
 *
 * @since 1.9.5
 */
class CurlCompatibility {

	/**
	 * Initialization.
	 *
	 * @since 1.9.5
	 *
	 * @return CurlCompatibility|null
	 */
	public function init(): ?CurlCompatibility {

		return ! $this->is_curl_loaded() ? $this : null;
	}

	/**
	 * Register hooks.
	 *
	 * @since 1.9.5
	 */
	public function hooks() {

		// Warn the user about the fact that cURL is not loaded.
		add_action( 'admin_notices', [ $this, 'display_curl_missing_notice' ] );
	}

	/**
	 * Check if cURL is loaded.
	 *
	 * @since 1.9.5
	 *
	 * @return bool
	 */
	private function is_curl_loaded(): bool {

		return extension_loaded( 'curl' );
	}

	/**
	 * Display wp-admin notification saying user to enable cURL extension for the Square payments.
	 *
	 * @since 1.9.5
	 */
	public function display_curl_missing_notice() {

		echo '<div class="notice notice-error"><p>';
			esc_html_e( 'The WPForms Square payments require cURL to be enabled to work correctly.', 'wpforms-lite' );
		echo '</p></div>';
	}
}