| Server IP : 121.121.20.254 / Your IP : 216.73.216.202 Web Server : Microsoft-IIS/10.0 System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64 User : IUSR ( 0) PHP Version : 8.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/inetpub/wwwroot/AIWEBSTATION/wp-content/plugins/fluentform/app/Modules/Ai/ |
Upload File : |
<?php
namespace FluentForm\App\Modules\Ai;
defined('ABSPATH') or die;
/**
* Handling AI Api.
* @since 6.0.0
*/
class FluentFormAIAPI
{
private $url = 'https://ai.fluentforms.com/';
public function makeRequest($requestData = [])
{
$headers = [
'Content-Type' => 'application/json',
];
// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound -- http_request_timeout is a WordPress core hook
$originalTimeout = apply_filters('http_request_timeout', 5);
// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound -- http_request_timeout is a WordPress core hook
add_filter('http_request_timeout', function ($timeout) {
return 60;
});
$response = wp_remote_post($this->url, [
'headers' => $headers,
'body' => json_encode($requestData),
]);
// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound -- http_request_timeout is a WordPress core hook
add_filter('http_request_timeout', function ($timeout) use ($originalTimeout) {
return $originalTimeout;
});
if (is_wp_error($response)) {
return new \WP_Error(423, $response->get_error_message());
}
$body = json_decode(wp_remote_retrieve_body($response), true);
$code = wp_remote_retrieve_response_code($response);
$error_message = __('Something went wrong.', 'fluentform');
if (isset($body['error']['message'])) {
$error_message = $body['error']['message'];
}
if ($code !== 200) {
return new \WP_Error(423, $error_message);
}
return $body;
}
}