PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.2.3
JetFormBuilder — Dynamic Blocks Form Builder v3.2.3
3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / templates / fields / select-field.php
jetformbuilder / templates / fields Last commit date
action-button.php 2 years ago calculated-field.php 2 years ago color-picker-field.php 2 years ago date-field.php 2 years ago datetime-field.php 2 years ago form-break-field.php 2 years ago group-break-field.php 2 years ago heading-field.php 2 years ago hidden-field.php 2 years ago image-preview.php 2 years ago map-field.php 2 years ago media-field.php 2 years ago number-field.php 2 years ago preset-media-field.php 2 years ago progress-bar.php 2 years ago radio-field.php 2 years ago range-field.php 2 years ago select-field.php 2 years ago text-field.php 2 years ago textarea-field.php 2 years ago time-field.php 2 years ago
select-field.php
83 lines
1 <?php
2 /**
3 * input[type="hidden"] template
4 *
5 * @var Select_Field_Render $this
6 * @var array $args
7 */
8
9 use Jet_Form_Builder\Blocks\Render\Select_Field_Render;
10 use Jet_Form_Builder\Classes\Tools;
11
12 // If this file is called directly, abort.
13 if ( ! defined( 'WPINC' ) ) {
14 die;
15 }
16
17 $this->add_attribute( 'class', 'jet-form-builder__field select-field' );
18 $this->add_attribute( 'class', $args['class_name'] );
19 $this->add_attribute( 'required', $this->block_type->get_required_val() );
20 $this->add_attribute( 'name', $this->block_type->get_field_name() );
21 $this->add_attribute( 'data-field-name', $args['name'] );
22 $this->add_attribute( 'id', $this->block_type->get_field_id( $args ) );
23 $this->add_attribute( 'multiple', $this->block_type->is_multiple() ? 1 : '' );
24 $this->add_attribute(
25 'size',
26 $this->block_type->is_multiple()
27 ? $this->block_type->get_multiple_size()
28 : ''
29 );
30 $this->add_attribute( 'data-jfb-sync' );
31
32 $placeholder = $args['placeholder'] ?? false;
33 $default = $args['default'] ?? false;
34
35 $this->add_attribute( 'data-default-val', $default );
36 ?>
37 <div class="jet-form-builder__field-wrap">
38 <select <?php $this->render_attributes_string(); ?>>
39 <?php
40
41 if ( $placeholder ) {
42 $additional_attrs = ( $args['is_disabled_placeholder'] ?? false ) ? 'disabled' : '';
43
44 if ( ! $default ) {
45 $additional_attrs .= ' selected';
46 }
47 // phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped
48 printf( '<option value="" %1$s>%2$s</option>', $additional_attrs, $placeholder );
49 }
50
51 if ( ! empty( $args['field_options'] ) ) {
52
53 foreach ( $args['field_options'] as $value => $option ) {
54
55 $selected = '';
56 $calc = '';
57
58 if ( is_array( $option ) ) {
59 $val = $option['value'];
60 $label = $option['label'];
61 } else {
62 $val = $value;
63 $label = $option;
64 }
65
66 if ( ! empty( $option['selected'] ) ) {
67 $selected = 'selected="selected"';
68 }
69
70 if ( is_array( $option ) && isset( $option['calculate'] ) ) {
71 $calc = ' data-calculate="' . esc_attr( $option['calculate'] ) . '"';
72 }
73
74 printf( '<option value="%1$s" %3$s%4$s>%2$s</option>', $val, $label, $selected, $calc );
75
76 }
77 }
78
79 ?>
80 </select>
81 </div>
82 <?php // phpcs:enable WordPress.Security.EscapeOutput.OutputNotEscaped
83