Uname: Linux p3plzcpnl499967.prod.phx3.secureserver.net 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
Software: Apache
PHP version: 8.2.30 [ PHP INFO ] PHP os: Linux
Server Ip: 208.109.40.231
Your Ip: 216.73.216.26
User: nayff91c5tsx (10005085) | Group: nayff91c5tsx (10005085)
Safe Mode: OFF
Disable Function:
NONE

name : forms.php
<?php
namespace Jet_Engine\Glossaries;

/**
 * Meta fields compatibility class
 */

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

class Forms {

	public function __construct() {
		add_filter( 'jet-engine/forms/editor/field-options-sources', array( $this, 'register_source' ) );
		add_action( 'jet-engine/forms/editor/field-options-controls', array( $this, 'register_controls' ) );
		add_filter( 'jet-engine/forms/field-options', array( $this, 'apply_glossary_options' ), 10, 2 );
	}

	public function apply_glossary_options( $options, $args ) {

		if ( ! empty( $args['field_options_from'] ) && 'glossary' === $args['field_options_from'] && ! empty( $args['glossary_id'] ) ) {

			$glossary = jet_engine()->glossaries->data->get_item_for_edit( absint( $args['glossary_id'] ) );

			if ( ! empty( $glossary ) && ! empty( $glossary['fields'] ) ) {
				$options = $glossary['fields'];
			}
		}

		return $options;
	}

	public function register_source( $sources = array() ) {
		$sources['glossary'] = __( 'Glossary', 'jet-engine' );
		return $sources;
	}

	public function register_controls() {
		?>
		<div class="jet-form-editor__row"
			v-if="inArray( currentItem.settings.type, [ 'select', 'checkboxes', 'radio' ] ) && 'glossary' === currentItem.settings.field_options_from"
		>
			<div class="jet-form-editor__row-label"><?php _e( 'Select Glossary:', 'jet-engine' ); ?></div>
			<div class="jet-form-editor__row-control">
				<select v-model="currentItem.settings.glossary_id">
					<option value=""><?php _e( 'Select glossary...', 'jet-engine' ); ?></option>
					<?php
						foreach ( jet_engine()->glossaries->settings->get() as $glossary ) {
							printf( '<option value="%1$s">%2$s</option>', $glossary['id'], $glossary['name'] );
						}
					?>
				</select>
			</div>
		</div>
		<?php
	}

}
© 2026 GrazzMean