esc_attr__( 'Select a form', 'fusion-builder' ) ]; $forms = GFAPI::get_forms(); if ( is_array( $forms ) ) { foreach ( $forms as $form ) { $form_array[ $form['id'] ] = $form['title']; } } return $form_array; } } /** * Adds scripts to live editor, so that gravity forms can load via AJAX. * * @since 3.11.8 * @return void */ function awb_add_gravity_forms_assets_to_live_editor() { if ( fusion_is_element_enabled( 'gravityform' ) ) { add_filter( 'gform_force_hooks_js_output', '__return_true' ); add_filter( 'gform_post_render_script', function ( $script ) { return 'setTimeout( function() {' . str_replace( 'if (event.defaultPrevented) {', 'if (event && event.defaultPrevented) {', $script ) . '}, 250 );'; } ); add_action( 'wp_enqueue_scripts', function () { $forms = GFAPI::get_forms(); foreach ( $forms as $form ) { gravity_form_enqueue_scripts( $form['id'], true ); } } ); } } add_action( 'fusion_load_module', 'awb_add_gravity_forms_assets_to_live_editor' ); /** * Map shortcode to Avada Builder. */ function fusion_element_gravity_form() { $fusion_settings = awb_get_fusion_settings(); $is_builder = ( function_exists( 'fusion_is_preview_frame' ) && fusion_is_preview_frame() ) || ( function_exists( 'fusion_is_builder_frame' ) && fusion_is_builder_frame() ); $to_link = ''; if ( $is_builder ) { $to_link = '' . __( 'Global Options', 'fusion-builder' ) . ''; } else { $to_link = '' . esc_attr__( 'Global Options', 'fusion-builder' ) . ''; } fusion_builder_map( [ 'name' => esc_attr__( 'Gravity Form', 'fusion-builder' ), 'shortcode' => 'gravityform', 'icon' => 'fusiona-Gravityforms', 'preview' => FUSION_BUILDER_PLUGIN_DIR . 'inc/templates/previews/fusion-gravity-form-preview.php', 'preview_id' => 'fusion-builder-block-module-gravity-form-preview-template', 'params' => [ [ 'type' => 'select', 'heading' => esc_attr__( 'Select Form', 'fusion-builder' ), 'description' => sprintf( /* translators: link to theme-options */ __( 'NOTE: The form uses %s for stying.', 'fusion-builder' ), $to_link ), 'param_name' => 'id', 'value' => fusion_builder_get_gravity_forms(), ], [ 'type' => 'radio_button_set', 'heading' => esc_attr__( 'Display Form Title', 'fusion-builder' ), 'description' => esc_attr__( 'Whether or not to display the form title.', 'fusion-builder' ), 'param_name' => 'title', 'default' => 'true', 'value' => [ 'true' => esc_attr__( 'Yes', 'fusion-builder' ), 'false' => esc_attr__( 'No', 'fusion-builder' ), ], ], [ 'type' => 'radio_button_set', 'heading' => esc_attr__( 'Display Form Description', 'fusion-builder' ), 'description' => esc_attr__( 'Whether or not to display the form description.', 'fusion-builder' ), 'param_name' => 'description', 'default' => 'true', 'value' => [ 'true' => esc_attr__( 'Yes', 'fusion-builder' ), 'false' => esc_attr__( 'No', 'fusion-builder' ), ], ], [ 'type' => 'radio_button_set', 'heading' => esc_attr__( 'Enable Ajax', 'fusion-builder' ), 'description' => esc_attr__( 'Specify whether or not to use Ajax to submit the form.', 'fusion-builder' ), 'param_name' => 'ajax', 'default' => 'false', 'value' => [ 'true' => esc_attr__( 'Yes', 'fusion-builder' ), 'false' => esc_attr__( 'No', 'fusion-builder' ), ], ], ], ] ); } add_action( 'fusion_builder_before_init', 'fusion_element_gravity_form' ); }