HEX
Server: LiteSpeed
System: Linux melbournecleaninggroup 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: www-data (33)
PHP: 7.3.33-1+focal
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,
Upload Files
File: /var/www/html/wp-content/plugins/brizy/admin/cloud/proxy.php
<?php


class Brizy_Admin_Cloud_Proxy {

	const ACTION = 'brizy_cloud_proxy';

	/**
	 * Brizy_Admin_Cloud_Proxy constructor.
	 */
	public function __construct() {
		add_action( 'wp_ajax_' . self::ACTION, array( $this, 'handleRequest' ) );
	}

	/**
	 * @throws Exception
	 */
	public function handleRequest() {

		$vars = $_GET;

		$project = Brizy_Editor_Project::get();

		// redirect the request
		$token          = $project->getMetaValue( 'brizy-cloud-token' );
		$cloudProjectId = $project->getMetaValue( 'brizy-cloud-project' );

		if ( ! isset( $vars['endpoint'] ) ) {
			wp_send_json_error( null, 400 );
			exit;
		}

		if ( ! $token || ! $cloudProjectId || ! isset( $vars['endpoint'] ) ) {
			wp_send_json_error( null, 401 );
			exit;
		}

		$http     = new WP_Http();
		$url      = Brizy_Config::CLOUD_ENDPOINT . "/api/" . $vars['endpoint'];
		$response = $http->request( $url, array(
			'headers' => array(
				'X-AUTH-APP-TOKEN'  => Brizy_Config::CLOUD_APP_KEY,
				'X-AUTH-USER-TOKEN' => $token
			),
			'body'    => $_REQUEST['request'],
			'method'  => $_SERVER['REQUEST_METHOD'],
		) );

		$status = wp_remote_retrieve_response_code( $response );

		if ( $response instanceof WP_Error ) {
			wp_send_json_error( wp_remote_retrieve_response_message( $response ), $status );
			exit;
		}

		wp_send_json_success( wp_remote_retrieve_body( $response ), $status );
		exit;
	}
}