PluginProbe
JetFormBuilder — Dynamic Blocks Form Builder / 3.6.4
JetFormBuilder — Dynamic Blocks Form Builder v3.6.4
3.6.5.2 3.6.5.1 3.6.5 3.6.4.2 3.6.4.1 3.6.4 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 All 130 releases
jetformbuilder / modules / shortcode / form-shortcode.php

form-shortcode.php in JetFormBuilder — Dynamic Blocks Form Builder 3.6.4, at modules/shortcode/form-shortcode.php

58 lines 1.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3
4 namespace JFB_Modules\Shortcode;
5
6 use Jet_Form_Builder\Blocks\Types\Form;
7 use Jet_Form_Builder\Classes\Arguments\Form_Arguments;
8
9 // If this file is called directly, abort.
10 if ( ! defined( 'WPINC' ) ) {
11 die;
12 }
13
14 class Form_Shortcode extends Shortcode {
15
16 /**
17 * @return mixed
18 */
19 public function get_name() {
20 return 'jet_fb_form';
21 }
22
23 public function default_args() {
24 return $this->prepare_attributes(
25 jet_form_builder()->blocks->get_form_class()->get_attributes()
26 );
27 }
28
29 protected function prepare_attributes( $attrs ): array {
30 $result = array();
31 $arguments = new Form_Arguments();
32
33 foreach ( $attrs as $name => $attr ) {
34 if ( ! array_key_exists( $name, $arguments->props ) ) {
35 continue;
36 }
37
38 $result[ $name ] = $attr['default'];
39 }
40
41 return $result;
42 }
43
44 /**
45 * @param $settings
46 *
47 * @return mixed
48 */
49 public function generate( $settings ) {
50 /** @var Form $form */
51 $form = jet_form_builder()->blocks->get_form_class();
52
53 return do_shortcode( $form->render_callback_field( $settings ) );
54 }
55
56
57 }
58