| Server IP : 38.190.208.107 / Your IP : 216.73.216.219 Web Server : nginx/1.28.1 System : Linux ht2026040333114 6.1.0-10-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.37-1 (2023-07-03) x86_64 User : www ( 1000) PHP Version : 8.2.28 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv,eval,assert,passthru,system,exec,shell_exec,popen,proc_open MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/wp.3/wp-content/plugins/wpforms-lite/src/Integrations/AI/Admin/Ajax/ |
Upload File : |
<?php
namespace WPForms\Integrations\AI\Admin\Ajax;
use WPForms\Integrations\AI\API\Choices as ChoicesAPI;
/**
* Choices class.
*
* @since 1.9.1
*/
class Choices extends Base {
/**
* API Choices instance.
*
* @since 1.9.1
*
* @var ChoicesAPI
*/
protected $api_choices;
/**
* Initialize.
*
* @since 1.9.1
*/
public function init() {
parent::init();
$this->api_choices = new ChoicesAPI();
$this->api_choices->init();
$this->hooks();
}
/**
* Register hooks.
*
* @since 1.9.1
*/
private function hooks() {
add_action( 'wp_ajax_wpforms_get_ai_choices', [ $this, 'get_choices' ] );
}
/**
* Get choices.
*
* @since 1.9.1
*/
public function get_choices() {
if ( ! $this->validate_nonce() ) {
wp_send_json_error(
[ 'error' => esc_html__( 'Your session expired. Please reload the builder.', 'wpforms-lite' ) ]
);
}
$prompt = $this->get_post_data( 'prompt' );
if ( $this->is_empty_prompt( $prompt ) ) {
wp_send_json_success( [ 'choices' => [] ] );
}
$session_id = $this->get_post_data( 'session_id' );
$choices = $this->api_choices->choices( $prompt, $session_id );
wp_send_json_success( $choices );
}
}