????JFIF??x?x????'
| Server IP : 172.67.174.47  /  Your IP : 216.73.216.83 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /././home/tempvsty/././pontiacques.org/wp-content/plugins/optinmonster/OMAPI/ | 
| Upload File : | 
<?php
/**
 * WPForms class.
 *
 * @since 2.9.0
 *
 * @package OMAPI
 * @author  Eduardo Nakatsuka
 */
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}
/**
 * The WPForms class.
 *
 * @since 2.9.0
 */
class OMAPI_WPForms extends OMAPI_Integrations_Base {
	/**
	 * The OMAPI_WPForms_RestApi instance.
	 *
	 * @since 2.13.0
	 *
	 * @var null|OMAPI_WPForms_RestApi
	 */
	public $rest = null;
	/**
	 * Holds the instance of OMAPI_WPForms_Save.
	 *
	 * @var null|OMAPI_WPForms_Save
	 */
	public $save = null;
	/**
	 * Primary class constructor.
	 *
	 * @since 2.9.0
	 */
	public function __construct() {
		parent::__construct();
		$this->save = new OMAPI_WPForms_Save();
		add_action( 'optin_monster_api_rest_register_routes', array( $this, 'maybe_init_rest_routes' ) );
		// When WPForms is activated, connect it.
		add_action( 'activate_wpforms-lite/wpforms.php', array( $this->save, 'connect' ) );
		add_action( 'activate_wpforms/wpforms.php', array( $this->save, 'connect' ) );
		// When WPForms is deactivated, disconnect.
		add_action( 'deactivate_wpforms-lite/wpforms.php', array( $this->save, 'disconnect' ) );
		add_action( 'deactivate_wpforms/wpforms.php', array( $this->save, 'disconnect' ) );
	}
	/**
	 * Check if the WPForms plugin is active.
	 *
	 * @since 2.9.0
	 *
	 * @return bool
	 */
	public static function is_active() {
		return class_exists( 'WPForms', true );
	}
	/**
	 * Get WPForms forms array containing label and value.
	 *
	 * @since 2.9.0
	 *
	 * @return array
	 */
	public function get_forms_array() {
		$forms  = $this->get_forms();
		$result = array();
		if ( empty( $forms ) || ! is_array( $forms ) ) {
			return $result;
		}
		foreach ( $forms as $form ) {
			$result[] = array(
				'value' => $form->ID,
				'label' => $form->post_title,
			);
		}
		return $result;
	}
	/**
	 * Get forms from WPForms plugin.
	 *
	 * @since 2.9.0
	 *
	 * @return array All the forms in WPForms plugin.
	 */
	public function get_forms() {
		if ( ! function_exists( 'wpforms' ) ) {
			return array();
		}
		return wpforms()->form->get( '', array( 'order' => 'DESC' ) );
	}
	/**
	 * Get the currently installed WPForms version.
	 *
	 * @since 2.9.0
	 *
	 * @return string The WPForms version.
	 */
	public static function version() {
		if ( ! function_exists( 'wpforms' ) ) {
			return '0.0.0';
		}
		$version = wpforms()->version;
		return $version ? $version : '0.0.0';
	}
	/**
	 * Initiate our REST routes for EDD if EDD active.
	 *
	 * @since 2.13.0
	 *
	 * @return void
	 */
	public function maybe_init_rest_routes() {
		if ( self::is_active() ) {
			$this->rest = new OMAPI_WPForms_RestApi( $this );
		}
	}
}