HEX
Server: Apache
System: Linux belinyu.iixcp.rumahweb.net 4.18.0-553.123.2.lve.el8.x86_64 #1 SMP Thu May 7 23:17:13 UTC 2026 x86_64
User: sduw1495 (3615)
PHP: 7.4.33
Disabled: system,exec,escapeshellarg,escapeshellcmd,passthru,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,popen,pclose,dl,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setsid,posix_setuid,posix_setpgid,ini_alter,show_source,define_syslog_variables,symlink,syslog,openlog,openlog,closelog,ocinumcols,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dll,ftp,myshellexec,socket_bind,mail,posix_getwpuid
Upload Files
File: //proc/thread-self/cwd/wp-content/plugins/jetformbuilder/modules/ai/module.php
<?php


namespace JFB_Modules\Ai;

// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
	die;
}

use JFB_Components\Module\Base_Module_After_Install_It;
use JFB_Components\Module\Base_Module_Handle_It;
use JFB_Components\Module\Base_Module_Handle_Trait;
use JFB_Components\Module\Base_Module_It;
use JFB_Components\Module\Base_Module_Url_It;
use JFB_Components\Module\Base_Module_Url_Trait;
use JFB_Modules\Ai\Rest_Api\Endpoints\Generate_Form_Endpoint;
use JFB_Modules\Post_Type;

class Module implements Base_Module_It, Base_Module_Url_It, Base_Module_Handle_It, Base_Module_After_Install_It {

	use Base_Module_Url_Trait;
	use Base_Module_Handle_Trait;

	public function rep_item_id() {
		return 'ai';
	}

	public function condition(): bool {
		return true;
	}

	public function init_hooks() {
		add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_assets' ) );
		add_action( 'jet-form-builder/editor-assets/before', array( $this, 'editor_enqueue_assets' ) );
	}

	public function remove_hooks() {
		remove_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_assets' ) );
		remove_action( 'jet-form-builder/editor-assets/before', array( $this, 'editor_enqueue_assets' ) );
	}

	public function on_install() {
		/** @var \JFB_Modules\Rest_Api\Module $rest_api */
		/** @noinspection PhpUnhandledExceptionInspection */
		$rest_api = jet_form_builder()->module( 'rest-api' );

		$rest_api->get_controller()->install( new Generate_Form_Endpoint() );
	}

	public function on_uninstall() {
		/** @var \JFB_Modules\Rest_Api\Module $rest_api */
		/** @noinspection PhpUnhandledExceptionInspection */
		$rest_api = jet_form_builder()->module( 'rest-api' );

		$rest_api->get_controller()->uninstall( new Generate_Form_Endpoint() );
	}

	public function admin_enqueue_assets() {
		global $post_type;

		if ( Post_Type\Module::SLUG !== $post_type ) {
			return;
		}

		/** @var \JFB_Modules\Html_Parser\Module $parser_module */
		/** @noinspection PhpUnhandledExceptionInspection */
		$parser_module = jet_form_builder()->module( 'html-parser' );

		$parser_module->register_scripts();

		wp_enqueue_style(
			$this->get_handle(),
			$this->get_url( 'assets/build/modal.css' ),
			array(
				'wp-components',
			),
			jet_form_builder()->get_version()
		);
		wp_enqueue_script(
			$this->get_handle(),
			$this->get_url( 'assets/build/admin/forms.js' ),
			array(
				$parser_module->get_handle(),
				'wp-api-fetch',
				'wp-dom-ready',
				'wp-components',
				'wp-i18n',
			),
			jet_form_builder()->get_version(),
			true
		);

		wp_localize_script(
			$this->get_handle(),
			'JetFormBuilderAdmin',
			array(
				'edit_url' => esc_url(
					add_query_arg(
						array( 'action' => 'edit' ),
						admin_url( 'post.php' )
					)
				),
			)
		);
	}

	public function editor_enqueue_assets() {
		/** @var \JFB_Modules\Html_Parser\Module $parser_module */
		/** @noinspection PhpUnhandledExceptionInspection */
		$parser_module = jet_form_builder()->module( 'html-parser' );

		$parser_module->register_scripts();
		wp_enqueue_script(
			$this->get_handle(),
			$this->get_url( 'assets/build/editor.js' ),
			array(
				$parser_module->get_handle(),
			),
			jet_form_builder()->get_version(),
			true
		);
		wp_enqueue_style(
			$this->get_handle(),
			$this->get_url( 'assets/build/modal.css' ),
			array(),
			jet_form_builder()->get_version()
		);
	}
}