HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux vm8 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: afleverb (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //var/www/winter_site/wp-content/plugins/wpforms-lite/src/Integrations/Stripe/Stripe.php
<?php

namespace WPForms\Integrations\Stripe;

use WPForms\Integrations\IntegrationInterface;

/**
 * Integration of the Stripe payment gateway.
 *
 * @since 1.8.2
 */
final class Stripe implements IntegrationInterface {

	/**
	 * Determine if the integration is allowed to load.
	 *
	 * @since 1.8.2
	 *
	 * @return bool
	 */
	public function allow_load() {

		// Determine whether the Stripe addon version is compatible with the WPForms plugin version.
		$addon_compat = new StripeAddonCompatibility();

		if (
			Helpers::is_pro() &&
			! $addon_compat->is_supported_version()
		) {
			$addon_compat->hooks();

			return false;
		}

		/**
		 * Whether the integration is allowed to load.
		 *
		 * @since 1.8.2
		 *
		 * @param bool $is_allowed Integration loading state.
		 */
		return (bool) apply_filters( 'wpforms_integrations_stripe_allow_load', true );
	}

	/**
	 * Load the integration.
	 *
	 * @since 1.8.2
	 */
	public function load() {

		if ( wpforms_is_admin_page( 'builder' ) ) {
			( new Admin\Builder\Enqueues() )->init();
		}

		// Bail early for paid users with active Stripe addon.
		if ( Helpers::is_pro() ) {
			return;
		}

		$api = new Api\PaymentIntents();

		$api->init();

		( new Process() )->init( $api );
		( new Frontend() )->init( $api );

		if ( wpforms_is_admin_page( 'settings', 'payments' ) ) {
			( new Admin\Settings() )->init();
		}

		if ( wpforms_is_admin_page( 'builder' ) ) {
			( new Admin\Builder\Settings() )->init();
		}
	}
}