id ] = $form->title; } } } if ( empty( $field_options ) ) { $field_options = array( '-1' => __( 'You have not added any Gravity Forms yet.', 'uael' ), ); } return $field_options; } /** * Returns gravity forms id * * @since 0.0.1 * @return integer Key id for Gravity Form. */ protected function get_gravity_form_id() { if ( class_exists( 'GFForms' ) ) { $forms = \RGFormsModel::get_forms( null, 'title' ); if ( is_array( $forms ) ) { foreach ( $forms as $form ) { return $form->id; } } } return -1; } /** * Register GForms Styler controls. * * @since 1.29.2 * @access protected */ protected function register_controls() { $this->register_general_content_controls(); $this->register_input_style_controls(); $this->register_radio_content_controls(); $this->register_section_field_controls(); $this->register_button_content_controls(); $this->register_error_style_controls(); $this->register_spacing_controls(); $this->register_typography_controls(); $this->register_helpful_information(); } /** * Register GForms Styler General Controls. * * @since 0.0.1 * @access protected */ protected function register_general_content_controls() { $this->start_controls_section( 'section_button', array( 'label' => __( 'General', 'uael' ), ) ); $this->add_control( 'form_id', array( 'label' => __( 'Select Form', 'uael' ), 'type' => Controls_Manager::SELECT, 'options' => $this->get_gravity_forms(), 'default' => '0', ) ); $this->add_control( 'form_ajax_option', array( 'label' => __( 'Enable AJAX Form Submission', 'uael' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => __( 'Yes', 'uael' ), 'label_off' => __( 'No', 'uael' ), 'default' => 'true', 'label_block' => false, 'prefix_class' => 'uael-gf-ajax-', ) ); $this->add_control( 'mul_form_option', array( 'label' => __( 'Keyboard Tab Key Support', 'uael' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => __( 'Yes', 'uael' ), 'label_off' => __( 'No', 'uael' ), 'default' => 'no', 'label_block' => false, 'return_value' => 'yes', ) ); $this->add_control( 'form_tab_index_option', array( 'label' => __( 'Set Tabindex Value', 'uael' ), 'type' => Controls_Manager::NUMBER, 'default' => 1, 'condition' => array( 'mul_form_option' => 'yes', ), ) ); if ( parent::is_internal_links() ) { $this->add_control( 'help_doc_tabindex', array( 'type' => Controls_Manager::RAW_HTML, /* translators: %s admin link */ 'raw' => sprintf( __( 'You need to change above tabindex value if pressing tab on your keyboard not works as expected. Please read %1$s this article %2$s for more information.', 'uael' ), '', '' ), 'content_classes' => 'uael-editor-doc', 'condition' => array( 'mul_form_option' => 'yes', ), ) ); } $this->add_control( 'form_title_option', array( 'label' => __( 'Title & Description', 'uael' ), 'type' => Controls_Manager::SELECT, 'default' => 'yes', 'label_block' => false, 'options' => array( 'yes' => __( 'From Gravity Form', 'uael' ), 'no' => __( 'Enter Your Own', 'uael' ), 'none' => __( 'None', 'uael' ), ), ) ); $this->add_control( 'form_title', array( 'label' => __( 'Form Title', 'uael' ), 'type' => Controls_Manager::TEXT, 'condition' => array( 'form_title_option' => 'no', ), 'dynamic' => array( 'active' => true, ), ) ); $this->add_control( 'form_desc', array( 'label' => __( 'Form Description', 'uael' ), 'type' => Controls_Manager::TEXTAREA, 'condition' => array( 'form_title_option' => 'no', ), 'dynamic' => array( 'active' => true, ), ) ); $this->add_responsive_control( 'form_title_desc_align', array( 'label' => __( 'Title & Description
Alignment', 'uael' ), 'type' => Controls_Manager::CHOOSE, 'options' => array( 'left' => array( 'title' => __( 'Left', 'uael' ), 'icon' => 'fa fa-align-left', ), 'center' => array( 'title' => __( 'Center', 'uael' ), 'icon' => 'fa fa-align-center', ), 'right' => array( 'title' => __( 'Right', 'uael' ), 'icon' => 'fa fa-align-right', ), ), 'default' => 'left', 'condition' => array( 'form_title_option!' => 'none', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-form-desc, {{WRAPPER}} .uael-gf-form-title, {{WRAPPER}} .uael-gf-style .gform_description, {{WRAPPER}} .uael-gf-style .gform_heading' => 'text-align: {{VALUE}};', ), 'toggle' => false, ) ); $this->end_controls_section(); } /** * Register GForms Styler Input Style Controls. * * @since 0.0.1 * @access protected */ protected function register_input_style_controls() { $this->start_controls_section( 'form_input_style', array( 'label' => __( 'Form Fields', 'uael' ), ) ); $this->add_control( 'gf_style', array( 'label' => __( 'Field Style', 'uael' ), 'type' => Controls_Manager::SELECT, 'default' => 'box', 'options' => array( 'box' => __( 'Box', 'uael' ), 'underline' => __( 'Underline', 'uael' ), ), 'prefix_class' => 'uael-gf-style-', ) ); $this->add_control( 'form_input_size', array( 'label' => __( 'Field Size', 'uael' ), 'type' => Controls_Manager::SELECT, 'default' => 'sm', 'options' => array( 'xs' => __( 'Extra Small', 'uael' ), 'sm' => __( 'Small', 'uael' ), 'md' => __( 'Medium', 'uael' ), 'lg' => __( 'Large', 'uael' ), 'xl' => __( 'Extra Large', 'uael' ), ), 'prefix_class' => 'uael-gf-input-size-', ) ); $this->add_responsive_control( 'form_input_padding', array( 'label' => __( 'Field Padding', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px' ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper form .gform_body input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]), {{WRAPPER}} .uael-gf-style .gform_wrapper textarea' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', '{{WRAPPER}} .uael-gf-style .ginput_container select, {{WRAPPER}} .uael-gf-style .ginput_container .chosen-single' => 'padding-top: calc( {{TOP}}{{UNIT}} - 2{{UNIT}} ); padding-right: {{RIGHT}}{{UNIT}}; padding-bottom: calc( {{BOTTOM}}{{UNIT}} - 2{{UNIT}} ); padding-left: {{LEFT}}{{UNIT}};', '{{WRAPPER}} .uael-gf-check-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-check-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes) .uael-gf-check-style .gfield_radio .gchoice_label label:before, {{WRAPPER}} .uael-gf-check-style .ginput_container_consent input[type="checkbox"] + label:before' => 'height: {{BOTTOM}}{{UNIT}}; width: {{BOTTOM}}{{UNIT}};', '{{WRAPPER}} .uael-gf-check-style .gfield_checkbox input[type="checkbox"]:checked + label:before, {{WRAPPER}} .uael-gf-check-style .ginput_container_consent input[type="checkbox"]:checked + label:before' => 'font-size: calc( {{BOTTOM}}{{UNIT}} / 1.2 );', ), ) ); $this->add_control( 'form_input_bgcolor', array( 'label' => __( 'Field Background Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#fafafa', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper input[type=email], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=text], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=password], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=url], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=tel], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=number], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=date], {{WRAPPER}} .uael-gf-style .gform_wrapper select, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container-single .chosen-single, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container-multi .chosen-choices, {{WRAPPER}} .uael-gf-style .gform_wrapper textarea, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes) .uael-gf-style .gfield_radio .gchoice_label label:before, {{WRAPPER}} .uael-gf-style .gform_wrapper .gf_progressbar, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before' => 'background-color: {{VALUE}};', '{{WRAPPER}} .uael-gf-style .gsection' => 'border-bottom-color:{{VALUE}};', ), ) ); $this->add_control( 'form_label_color', array( 'label' => __( 'Label Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'global' => array( 'default' => Global_Colors::COLOR_TEXT, ), 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield_label, {{WRAPPER}} .uael-gf-style .gfield_checkbox li label, {{WRAPPER}} .uael-gf-style .ginput_container_consent label, {{WRAPPER}} .uael-gf-style .gfield_radio li label, {{WRAPPER}} .uael-gf-style .gsection_title, {{WRAPPER}} .uael-gf-style .gfield_html, {{WRAPPER}} .uael-gf-style .ginput_product_price, {{WRAPPER}} .uael-gf-style .ginput_product_price_label, {{WRAPPER}} .uael-gf-style .gf_progressbar_title, {{WRAPPER}} .uael-gf-style .gf_page_steps, {{WRAPPER}} .uael-gf-style .gfield_checkbox div label, {{WRAPPER}} .uael-gf-style .gfield_radio div label' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'form_input_color', array( 'label' => __( 'Input Text', 'uael' ), 'type' => Controls_Manager::COLOR, 'global' => array( 'default' => Global_Colors::COLOR_TEXT, ), 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper .gfield input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]), {{WRAPPER}} .uael-gf-style .ginput_container select, {{WRAPPER}} .uael-gf-style .ginput_container .chosen-single, {{WRAPPER}} .uael-gf-style .ginput_container textarea, {{WRAPPER}} .uael-gf-style .gform_wrapper .gfield input::placeholder, {{WRAPPER}} .uael-gf-style .ginput_container textarea::placeholder, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"]:checked + label:before, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .uael-gf-select-custom:after ' => 'color: {{VALUE}}; opacity: 1;', '{{WRAPPER}} .uael-gf-style .gfield_radio input[type="radio"]:checked + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio .gchoice_button.uael-radio-active + .gchoice_label label:before' => 'background-color: {{VALUE}}; box-shadow:inset 0px 0px 0px 4px {{form_input_bgcolor.VALUE}};', ), ) ); $this->add_control( 'form_input_placeholder_color', array( 'label' => __( 'Placeholder Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => array( '{{WRAPPER}}.elementor-widget-uael-gf-styler .uael-gf-style .gform_wrapper .gfield input::placeholder, {{WRAPPER}}.elementor-widget-uael-gf-styler .uael-gf-style .ginput_container textarea::placeholder' => 'color: {{VALUE}}; opacity: 1;', ), ) ); $this->add_control( 'form_input_desc_color', array( 'label' => __( 'Field Description Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'global' => array( 'default' => Global_Colors::COLOR_TEXT, ), 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper .gfield .gfield_description, {{WRAPPER}} .uael-gf-style .ginput_container .gfield_post_tags_hint, {{WRAPPER}} .uael-gf-style .ginput_container .gform_fileupload_rules, {{WRAPPER}} .uael-gf-style .ginput_container_name input + label, {{WRAPPER}} .uael-gf-style .ginput_container_creditcard input + span + label, {{WRAPPER}} .uael-gf-style .ginput_container input + label, {{WRAPPER}} .uael-gf-style .ginput_container select + label, {{WRAPPER}} .uael-gf-style .ginput_container .chosen-single + label, {{WRAPPER}} .uael-gf-style .gfield_time_hour label, {{WRAPPER}} .uael-gf-style .gfield_time_minute label, {{WRAPPER}} .uael-gf-style .ginput_container_address label, {{WRAPPER}} .uael-gf-style .ginput_container_total span, {{WRAPPER}} .uael-gf-style .ginput_shipping_price, {{WRAPPER}} .uael-gf-select-custom + label, {{WRAPPER}} .uael-gf-style .gsection_description' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'form_required_color', array( 'label' => __( 'Required Asterisk Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper .gfield_required' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'input_border_style', array( 'label' => __( 'Border Style', 'uael' ), 'type' => Controls_Manager::SELECT, 'default' => 'solid', 'label_block' => false, 'options' => array( 'none' => __( 'None', 'uael' ), 'solid' => __( 'Solid', 'uael' ), 'double' => __( 'Double', 'uael' ), 'dotted' => __( 'Dotted', 'uael' ), 'dashed' => __( 'Dashed', 'uael' ), ), 'condition' => array( 'gf_style' => 'box', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper input[type=email], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=text], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=password], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=url], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=tel], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=number], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=date], {{WRAPPER}} .uael-gf-style .gform_wrapper select, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-single, {{WRAPPER}} .uael-gf-style .gform_wrapper textarea, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes) .uael-gf-style .gfield_radio .gchoice_label label:before' => 'border-style: {{VALUE}};', ), ) ); $this->add_control( 'input_border_size', array( 'label' => __( 'Border Width', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px' ), 'default' => array( 'top' => '1', 'bottom' => '1', 'left' => '1', 'right' => '1', 'unit' => 'px', ), 'condition' => array( 'gf_style' => 'box', 'input_border_style!' => 'none', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper input[type=email], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=text], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=password], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=url], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=tel], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=number], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=date], {{WRAPPER}} .uael-gf-style .gform_wrapper select, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-single, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-choices, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container .chosen-drop, {{WRAPPER}} .uael-gf-style .gform_wrapper textarea, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio input[type="radio"] + label:before, .gchoice_label label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes) .uael-gf-style .gfield_radio .gchoice_label label:before' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), ) ); $this->add_control( 'input_border_color', array( 'label' => __( 'Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'condition' => array( 'gf_style' => 'box', 'input_border_style!' => 'none', ), 'default' => '#eaeaea', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper input[type=email], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=text], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=password], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=url], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=tel], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=number], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=date], {{WRAPPER}} .uael-gf-style .gform_wrapper select, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-single, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-choices, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container .chosen-drop, {{WRAPPER}} .uael-gf-style .gform_wrapper textarea, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes) .uael-gf-style .gfield_radio .gchoice_label label:before' => 'border-color: {{VALUE}};', ), ) ); $this->add_responsive_control( 'gf_border_bottom', array( 'label' => __( 'Border Size', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 1, 'max' => 20, ), ), 'default' => array( 'size' => '2', 'unit' => 'px', ), 'condition' => array( 'gf_style' => 'underline', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=email], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=text], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=password], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=url], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=tel], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=number], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=date], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper select, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper .chosen-single, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper .chosen-choices, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper textarea' => 'border-width: 0 0 {{SIZE}}{{UNIT}} 0; border-style: solid;', '{{WRAPPER}}.uael-gf-style-underline .gform_wrapper .chosen-container .chosen-drop' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}; border-style: solid;', '{{WRAPPER}}.uael-gf-style-underline .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-style-underline .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-style-underline .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-style-underline .gfield_radio .gchoice_label label:before' => 'border-width: {{SIZE}}{{UNIT}}; border-style: solid; box-sizing: content-box;', ), ) ); $this->add_control( 'gf_border_color', array( 'label' => __( 'Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'condition' => array( 'gf_style' => 'underline', ), 'default' => '#c4c4c4', 'selectors' => array( '{{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=email], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=text], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=password], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=url], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=tel], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=number], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper input[type=date], {{WRAPPER}}.uael-gf-style-underline .gform_wrapper select, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper .chosen-single, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper .chosen-choices, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper .chosen-container .chosen-drop, {{WRAPPER}}.uael-gf-style-underline .gform_wrapper textarea, {{WRAPPER}}.uael-gf-style-underline .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-style-underline .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-style-underline .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-style-underline .gfield_radio .gchoice_label label:before' => 'border-color: {{VALUE}};', ), ) ); $this->add_control( 'gf_border_active_color', array( 'label' => __( 'Border Active Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'condition' => array( 'gf_style' => 'box', 'input_border_style!' => 'none', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield input:focus, {{WRAPPER}} .uael-gf-style .gfield textarea:focus, {{WRAPPER}} .uael-gf-style .gfield select:focus, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container-active.chosen-with-drop .chosen-single, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container-active.chosen-container-multi .chosen-choices, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"]:checked + label:before, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"]:checked + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio input[type="radio"]:checked + label:before, {{WRAPPER}} .uael-gf-style .gfield_radio .gchoice_button.uael-radio-active + .gchoice_label label:before' => 'border-color: {{VALUE}};', ), ) ); $this->add_control( 'gf_border_active_color_underline', array( 'label' => __( 'Border Active Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'condition' => array( 'gf_style' => 'underline', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield input:focus, {{WRAPPER}} .uael-gf-style .gfield textarea:focus, {{WRAPPER}} .uael-gf-style .gfield select:focus, {{WRAPPER}} .uael-gf-style .gfield .chosen-single:focus, {{WRAPPER}}.uael-gf-style-underline .gfield_checkbox input[type="checkbox"]:checked + label:before, {{WRAPPER}}.uael-gf-style-underline .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-style-underline .gfield_radio input[type="radio"]:checked + label:before, {{WRAPPER}}.uael-gf-style-underline .gfield_radio .gchoice_button.uael-radio-active + .gchoice_label label:before' => 'border-color: {{VALUE}};', ), ) ); $this->add_responsive_control( 'form_border_radius', array( 'label' => __( 'Rounded Corners', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px' ), 'default' => array( 'top' => '0', 'bottom' => '0', 'left' => '0', 'right' => '0', 'unit' => 'px', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper input[type=email], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=text], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=password], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=url], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=tel], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=number], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type=date], {{WRAPPER}} .uael-gf-style .gform_wrapper select, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-single, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-choices, {{WRAPPER}} .uael-gf-style .gform_wrapper .chosen-container .chosen-drop, {{WRAPPER}} .uael-gf-style .gform_wrapper textarea, {{WRAPPER}} .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}} .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), ) ); $this->add_control( 'enable_gforms_css_classes', array( 'label' => __( 'Support to CSS Ready Classes', 'uael' ), /* translators: %1$s doc link, %2$s link close */ 'description' => sprintf( __( 'Enable this option to add support to Gravity Forms CSS Ready Classes. %1$s Learn More. %2$s', 'uael' ), '', '' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => __( 'Yes', 'uael' ), 'label_off' => __( 'No', 'uael' ), 'return_value' => 'yes', 'default' => 'no', 'prefix_class' => 'uael-gf-enable-classes-', ) ); $this->end_controls_section(); } /** * Register GForms Styler Radio & Checkbox Controls. * * @since 0.0.1 * @access protected */ protected function register_radio_content_controls() { $this->start_controls_section( 'gf_radio_check_style', array( 'label' => __( 'Radio & Checkbox', 'uael' ), ) ); $this->add_control( 'gf_radio_check_custom', array( 'label' => __( 'Override Current Style', 'uael' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => __( 'Yes', 'uael' ), 'label_off' => __( 'No', 'uael' ), 'return_value' => 'yes', 'default' => '', 'prefix_class' => 'uael-gf-check-', ) ); $this->add_control( 'gf_radio_check_default', array( 'label' => __( 'Default Checkboxes/Radio Buttons', 'uael' ), 'description' => __( 'This option lets you use browser default checkboxes and radio buttons. Enable this if you face any issues with custom checkboxes and radio buttons.', 'uael' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => __( 'Yes', 'uael' ), 'label_off' => __( 'No', 'uael' ), 'return_value' => 'yes', 'default' => 'no', 'prefix_class' => 'uael-gf-check-default-', 'condition' => array( 'gf_radio_check_custom!' => '', ), ) ); $this->add_control( 'gf_radio_check_size', array( 'label' => _x( 'Size', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'condition' => array( 'gf_radio_check_custom!' => '', ), 'default' => array( 'unit' => 'px', 'size' => 20, ), 'range' => array( 'px' => array( 'min' => 15, 'max' => 50, ), ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-check-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-check-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-check-yes .uael-gf-check-style .gfield_radio .gchoice_label label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-check-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-check-style .gfield_checkbox input[type="checkbox"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-check-style .gfield_radio input[type="radio"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-check-style .ginput_container_consent input[type="checkbox"]' => 'width: {{SIZE}}{{UNIT}}!important; height:{{SIZE}}{{UNIT}};', '{{WRAPPER}}.uael-gf-check-yes .uael-gf-check-style .gfield_checkbox input[type="checkbox"]:checked + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-check-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-check-style .gfield_checkbox input[type="checkbox"]:checked, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-check-style .ginput_container_consent input[type="checkbox"]' => 'font-size: calc( {{SIZE}}{{UNIT}} / 1.2 );', ), ) ); $this->add_control( 'gf_radio_check_bgcolor', array( 'label' => __( 'Background Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'condition' => array( 'gf_radio_check_custom!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-check-yes .uael-gf-style .gfield_radio .gchoice_label label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"]' => 'background-color: {{VALUE}};', ), 'default' => '#fafafa', ) ); $this->add_control( 'gf_selected_color', array( 'label' => __( 'Selected Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'global' => array( 'default' => Global_Colors::COLOR_TEXT, ), 'condition' => array( 'gf_radio_check_custom!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"]:checked + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"]:checked:before' => 'color: {{VALUE}};', '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"]:checked + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"]:checked:before' => 'color: {{VALUE}};', '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"]:checked + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_radio .gchoice_button.uael-radio-active + .gchoice_label label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"]:checked:before' => 'background-color: {{VALUE}}; box-shadow:inset 0px 0px 0px 4px {{gf_radio_check_bgcolor.VALUE}};', ), ) ); $this->add_control( 'gf_select_color', array( 'label' => __( 'Label Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'condition' => array( 'gf_radio_check_custom!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox div label, {{WRAPPER}} .uael-gf-style .gfield_radio div label, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .ginput_container_consent label, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox li label, {{WRAPPER}} .uael-gf-style .gfield_radio li label' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'gf_check_border_color', array( 'label' => __( 'Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#eaeaea', 'condition' => array( 'gf_radio_check_custom!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-check-yes .uael-gf-style .gfield_radio .gchoice_label label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"]' => 'border-color: {{VALUE}};', ), ) ); $this->add_control( 'gf_check_border_width', array( 'label' => __( 'Border Width', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 20, ), ), 'default' => array( 'size' => '1', 'unit' => 'px', ), 'condition' => array( 'gf_radio_check_custom!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-check-yes .uael-gf-style .gfield_radio .gfield_radio .gchoice_label label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_radio input[type="radio"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"]' => 'border-width: {{SIZE}}{{UNIT}}; border-style: solid;', ), ) ); $this->add_control( 'gf_check_border_radius', array( 'label' => __( 'Checkbox Rounded Corners', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', '%' ), 'condition' => array( 'gf_radio_check_custom!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .gfield_checkbox input[type="checkbox"], {{WRAPPER}}.uael-gf-check-default-yes.uael-gf-check-yes .uael-gf-style .ginput_container_consent input[type="checkbox"]' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), 'default' => array( 'top' => '0', 'bottom' => '0', 'left' => '0', 'right' => '0', 'unit' => 'px', ), ) ); $this->end_controls_section(); } /** * Register GForms Styler Section Fields Controls. * * @since 1.32.0 * @access protected */ protected function register_section_field_controls() { $this->start_controls_section( 'section_field_style', array( 'label' => __( 'Section Field', 'uael' ), ) ); $this->add_control( 'section_field_text_color', array( 'label' => __( 'Text Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield.gsection .gsection_title' => 'color: {{VALUE}}', ), ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'section_field_typography', 'label' => __( 'Typography', 'uael' ), 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_ACCENT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gfield.gsection .gsection_title', 'separator' => 'before', ) ); $this->add_control( 'section_field_border_type', array( 'label' => __( 'Border Type', 'uael' ), 'type' => Controls_Manager::SELECT, 'default' => 'solid', 'options' => array( 'none' => __( 'None', 'uael' ), 'solid' => __( 'Solid', 'uael' ), 'double' => __( 'Double', 'uael' ), 'dotted' => __( 'Dotted', 'uael' ), 'dashed' => __( 'Dashed', 'uael' ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield.gsection' => 'border-bottom-style: {{VALUE}}', ), 'separator' => 'before', ) ); $this->add_responsive_control( 'section_field_border_height', array( 'label' => __( 'Border Thickness', 'uael' ), 'type' => Controls_Manager::SLIDER, 'default' => array( 'size' => 1, ), 'range' => array( 'px' => array( 'min' => 1, 'max' => 20, 'step' => 1, ), ), 'size_units' => array( 'px' ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield.gsection' => 'border-bottom-width: {{SIZE}}{{UNIT}}', ), 'condition' => array( 'section_field_border_type!' => 'none', ), ) ); $this->add_control( 'section_field_border_color', array( 'label' => __( 'Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield.gsection' => 'border-bottom-color: {{VALUE}}', ), 'condition' => array( 'section_field_border_type!' => 'none', ), ) ); $this->add_responsive_control( 'section_field_bottom_spacing', array( 'label' => __( 'Bottom Spacing', 'uael' ), 'type' => Controls_Manager::SLIDER, 'range' => array( 'px' => array( 'min' => 0, 'max' => 50, ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield.gsection' => 'padding-bottom: {{SIZE}}{{UNIT}};', ), 'separator' => 'before', ) ); $this->end_controls_section(); } /** * Register GForms Styler Button Controls. * * @since 0.0.1 * @access protected */ protected function register_button_content_controls() { $this->start_controls_section( 'section_style', array( 'label' => __( 'Submit Button', 'uael' ), ) ); $this->add_responsive_control( 'button_align', array( 'label' => __( 'Button Alignment', 'uael' ), 'type' => Controls_Manager::CHOOSE, 'options' => array( 'left' => array( 'title' => __( 'Left', 'uael' ), 'icon' => 'fa fa-align-left', ), 'center' => array( 'title' => __( 'Center', 'uael' ), 'icon' => 'fa fa-align-center', ), 'right' => array( 'title' => __( 'Right', 'uael' ), 'icon' => 'fa fa-align-right', ), 'justify' => array( 'title' => __( 'Justified', 'uael' ), 'icon' => 'fa fa-align-justify', ), ), 'default' => 'left', 'prefix_class' => 'uael%s-gf-button-', 'toggle' => false, ) ); $this->add_control( 'btn_size', array( 'label' => __( 'Size', 'uael' ), 'type' => Controls_Manager::SELECT, 'default' => 'sm', 'options' => array( 'xs' => __( 'Extra Small', 'uael' ), 'sm' => __( 'Small', 'uael' ), 'md' => __( 'Medium', 'uael' ), 'lg' => __( 'Large', 'uael' ), 'xl' => __( 'Extra Large', 'uael' ), ), 'prefix_class' => 'uael-gf-btn-size-', ) ); $this->add_responsive_control( 'gf_button_padding', array( 'label' => __( 'Padding', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', 'em', '%' ), 'selectors' => array( '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', '{{WRAPPER}} .uael-gf-style input[type="submit"], {{WRAPPER}} .uael-gf-style input[type="button"], {{WRAPPER}} .uael-gf-style .gf_progressbar_percentage, {{WRAPPER}} .uael-gf-style .gform_wrapper .percentbar_blue' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), 'separator' => 'after', ) ); $this->start_controls_tabs( 'tabs_button_style' ); $this->start_controls_tab( 'tab_button_normal', array( 'label' => __( 'Normal', 'uael' ), ) ); $this->add_control( 'button_text_color', array( 'label' => __( 'Text Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => array( '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))' => 'color: {{VALUE}};', '{{WRAPPER}} .uael-gf-style input[type="submit"], {{WRAPPER}} .uael-gf-style input[type="button"]' => 'color: {{VALUE}};', ), ) ); $this->add_group_control( Group_Control_Background::get_type(), array( 'name' => 'btn_background_color', 'label' => __( 'Background Color', 'uael' ), 'types' => array( 'classic', 'gradient' ), 'fields_options' => array( 'color' => array( 'global' => array( 'default' => Global_Colors::COLOR_ACCENT, ), ), ), 'selector' => '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .uael-gf-style input[type="submit"], {{WRAPPER}} .uael-gf-style input[type="button"], {{WRAPPER}} .uael-gf-style .gf_progressbar_percentage, {{WRAPPER}} .uael-gf-style .gform_wrapper .percentbar_blue', ) ); $this->add_group_control( Group_Control_Border::get_type(), array( 'name' => 'btn_border', 'label' => __( 'Border', 'uael' ), 'placeholder' => '1px', 'default' => '1px', 'selector' => '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .uael-gf-style input[type="submit"], {{WRAPPER}} .uael-gf-style input[type="button"]', ) ); $this->add_responsive_control( 'btn_border_radius', array( 'label' => __( 'Border Radius', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', '%' ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style input[type="submit"], {{WRAPPER}} .uael-gf-style input[type="button"], {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), ) ); $this->add_group_control( Group_Control_Box_Shadow::get_type(), array( 'name' => 'button_box_shadow', 'selector' => '{{WRAPPER}} .uael-gf-style input[type="submit"], {{WRAPPER}} .uael-gf-style input[type="button"], {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))', ) ); $this->end_controls_tab(); $this->start_controls_tab( 'tab_button_hover', array( 'label' => __( 'Hover', 'uael' ), ) ); $this->add_control( 'btn_hover_color', array( 'label' => __( 'Text Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'selectors' => array( '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover' => 'color: {{VALUE}};', '{{WRAPPER}} .uael-gf-style input[type="submit"]:hover, {{WRAPPER}} .uael-gf-style input[type="button"]:hover' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'gf_button_hover_border_color', array( 'label' => __( 'Border Hover Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'selectors' => array( '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover' => 'border-color: {{VALUE}};', '{{WRAPPER}} .uael-gf-style input[type="submit"]:hover, {{WRAPPER}} .uael-gf-style input[type="button"]:hover' => 'border-color: {{VALUE}};', ), ) ); $this->add_group_control( Group_Control_Background::get_type(), array( 'name' => 'button_background_hover_color', 'label' => __( 'Background Color', 'uael' ), 'types' => array( 'classic', 'gradient' ), 'selector' => '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .uael-gf-style input[type="submit"]:hover, {{WRAPPER}} .uael-gf-style input[type="button"]:hover', ) ); $this->add_control( 'button_hover_border_color', array( 'label' => __( 'Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'condition' => array( 'border_border!' => '', ), 'selectors' => array( '{{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*="mceu_"]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], {{WRAPPER}} [type="button"], {{WRAPPER}} [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover, {{WRAPPER}} .gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):hover' => 'border-color: {{VALUE}};', '{{WRAPPER}} .uael-gf-style input[type="submit"]:hover, {{WRAPPER}} .uael-gf-style input[type="button"]:hover' => 'border-color: {{VALUE}};', ), ) ); $this->end_controls_tab(); $this->end_controls_tabs(); $this->end_controls_section(); } /** * Register GForms Styler Error Style Controls. * * @since 0.0.1 * @access protected */ protected function register_error_style_controls() { $this->start_controls_section( 'form_error_field', array( 'label' => __( 'Success / Error Message', 'uael' ), ) ); $this->add_control( 'form_error', array( 'label' => __( 'Field Validation', 'uael' ), 'type' => Controls_Manager::HEADING, ) ); $this->add_control( 'form_error_msg_color', array( 'label' => __( 'Message Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#ff0000', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper .gfield_description.validation_message' => 'color: {{VALUE}}', ), ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'gf_message_typo', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_TEXT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gform_wrapper .validation_message', ) ); $this->add_responsive_control( 'field_validation_padding', array( 'label' => __( 'Padding', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', 'em', '%' ), 'selectors' => array( '{{WRAPPER}} .gfield_description.validation_message' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), ) ); $this->add_control( 'form_error_field_background', array( 'label' => __( 'Advanced Settings', 'uael' ), 'type' => Controls_Manager::SWITCHER, 'label_on' => __( 'Yes', 'uael' ), 'label_off' => __( 'No', 'uael' ), 'return_value' => 'yes', 'default' => '', 'prefix_class' => 'uael-gf-error-', ) ); $this->add_control( 'form_error_field_bgcolor', array( 'label' => __( 'Field Background Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'condition' => array( 'form_error_field_background!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-error-yes .gform_wrapper .gfield.gfield_error' => 'background-color: {{VALUE}};', ), ) ); $this->add_control( 'form_error_border_color', array( 'label' => __( 'Highlight Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#ff0000', 'condition' => array( 'form_error_field_background!' => '', ), 'selectors' => array( '{{WRAPPER}}.uael-gf-error-yes .gform_wrapper li.gfield_error input:not([type="submit"]):not([type="button"]):not([type="image"]), {{WRAPPER}}.uael-gf-error-yes .gform_wrapper .gfield_error .ginput_container select, {{WRAPPER}}.uael-gf-error-yes .gform_wrapper .gfield_error .ginput_container .chosen-single, {{WRAPPER}}.uael-gf-error-yes .gform_wrapper .gfield_error .ginput_container textarea, {{WRAPPER}}.uael-gf-error-yes .gform_wrapper li.gfield.gfield_error, {{WRAPPER}}.uael-gf-error-yes .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning, {{WRAPPER}}.uael-gf-error-yes li.gfield_error .gfield_checkbox input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-error-yes li.gfield_error .ginput_container_consent input[type="checkbox"] + label:before, {{WRAPPER}}.uael-gf-error-yes li.gfield_error .gfield_radio input[type="radio"] + label:before, {{WRAPPER}}:not(.uael-gf-check-default-yes).uael-gf-error-yes li.gfield_error .gfield_radio .gchoice_label label:before' => 'border-color: {{VALUE}};', '{{WRAPPER}}.uael-gf-error-yes .gform_wrapper li.gfield_error input[type="text"]' => 'border: {{input_border_size.BOTTOM}}px {{input_border_style.VALUE}} {{VALUE}} !important;', '{{WRAPPER}}.uael-gf-style-underline.uael-gf-error-yes .gform_wrapper li.gfield_error input[type="text"]' => 'border-width: 0 0 {{gf_border_bottom.SIZE}}px 0 !important; border-style: solid; border-color:{{VALUE}};', ), ) ); $this->add_control( 'form_validation_message', array( 'label' => __( 'Form Error Validation', 'uael' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ) ); $this->add_control( 'form_valid_message_color', array( 'label' => __( 'Error Message Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#cccccc', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors h2' => 'color: {{VALUE}}', ), ) ); $this->add_control( 'form_valid_bgcolor', array( 'label' => __( 'Error Message Background Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors' => 'background-color: {{VALUE}};', ), ) ); $this->add_control( 'form_valid_border_color', array( 'label' => __( 'Error Message Border Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#ff0000', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors' => 'border-color: {{VALUE}} !important;', ), ) ); $this->add_responsive_control( 'form_border_size', array( 'label' => __( 'Border Size', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', 'em', '%' ), 'default' => array( 'top' => '2', 'bottom' => '2', 'left' => '2', 'right' => '2', 'unit' => 'px', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors' => 'border-top: {{TOP}}{{UNIT}}; border-right: {{RIGHT}}{{UNIT}}; border-bottom: {{BOTTOM}}{{UNIT}}; border-left: {{LEFT}}{{UNIT}}; border-style: solid;', ), ) ); $this->add_control( 'form_valid_border_radius', array( 'label' => __( 'Rounded Corners', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', '%' ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), ) ); $this->add_responsive_control( 'form_valid_message_padding', array( 'label' => __( 'Message Padding', 'uael' ), 'type' => Controls_Manager::DIMENSIONS, 'size_units' => array( 'px', 'em', '%' ), 'default' => array( 'top' => '10', 'bottom' => '10', 'left' => '10', 'right' => '10', 'unit' => 'px', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};', ), ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'cf7_error_validation_typo', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_TEXT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gform_wrapper div.validation_error, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gform_validation_errors', ) ); $this->add_control( 'form_success_message', array( 'label' => __( 'Form Success Validation', 'uael' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ) ); $this->add_control( 'form_success_message_color', array( 'label' => __( 'Success Message Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'default' => '#008000', 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_confirmation_message' => 'color: {{VALUE}};', ), ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'cf7_success_validation_typo', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_TEXT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gform_confirmation_message', ) ); $this->end_controls_section(); } /** * Register GForms Styler Spacing Controls. * * @since 0.0.1 * @access protected */ protected function register_spacing_controls() { $this->start_controls_section( 'form_spacing', array( 'label' => __( 'Spacing', 'uael' ), 'tab' => Controls_Manager::TAB_STYLE, ) ); $this->add_responsive_control( 'form_title_margin_bottom', array( 'label' => __( 'Form Title Bottom Margin', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 200, ), ), 'condition' => array( 'form_title_option!' => 'none', ), 'selectors' => array( '{{WRAPPER}} .uael-gf-form-title' => 'margin-bottom: {{SIZE}}{{UNIT}};', ), ) ); $this->add_responsive_control( 'form_desc_margin_bottom', array( 'label' => __( 'Form Description Bottom Margin', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 200, ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-form-desc, {{WRAPPER}} .uael-gf-style .gform_heading' => 'margin-bottom: {{SIZE}}{{UNIT}};', ), 'condition' => array( 'form_title_option!' => 'none', ), ) ); $this->add_responsive_control( 'form_fields_margin', array( 'label' => __( 'Between Two Fields', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 200, ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gform_wrapper li.gfield, {{WRAPPER}} .uael-gf-style .gform_wrapper div.gfield, {{WRAPPER}} .uael-gf-style .gform_wrapper .gf_progressbar_wrapper, {{WRAPPER}} .uael-gf-style .gform_wrapper fieldset.gfield' => 'margin-bottom: {{SIZE}}{{UNIT}};', ), ) ); $this->add_responsive_control( 'form_label_margin_bottom', array( 'label' => __( 'Label Bottom Spacing', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 200, ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .gfield_label, {{WRAPPER}} .uael-gf-style .gsection_title, {{WRAPPER}} .uael-gf-style .gf_progressbar_title,{{WRAPPER}} .uael-gf-style .gf_page_steps' => 'margin-bottom: {{SIZE}}{{UNIT}} !important;', ), ) ); $this->add_responsive_control( 'form_input_margin_top', array( 'label' => __( 'Input Top Spacing', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 200, ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .ginput_container' => 'margin-top: {{SIZE}}{{UNIT}};', ), ) ); $this->add_responsive_control( 'form_input_margin_bottom', array( 'label' => __( 'Input Bottom Spacing', 'uael' ), 'type' => Controls_Manager::SLIDER, 'size_units' => array( 'px', 'em', 'rem' ), 'range' => array( 'px' => array( 'min' => 0, 'max' => 200, ), ), 'selectors' => array( '{{WRAPPER}} .uael-gf-style .ginput_container input' => 'margin-bottom: {{SIZE}}{{UNIT}};', ), ) ); $this->end_controls_section(); } /** * Register GForms Styler Typography Controls. * * @since 0.0.1 * @access protected */ protected function register_typography_controls() { $this->start_controls_section( 'form_typo', array( 'label' => __( 'Typography', 'uael' ), 'tab' => Controls_Manager::TAB_STYLE, ) ); $this->add_control( 'form_title_typo', array( 'label' => __( 'Form Title', 'uael' ), 'type' => Controls_Manager::HEADING, 'condition' => array( 'form_title_option!' => 'none', ), ) ); $this->add_control( 'form_title_tag', array( 'label' => __( 'HTML Tag', 'uael' ), 'type' => Controls_Manager::SELECT, 'options' => array( 'h1' => __( 'H1', 'uael' ), 'h2' => __( 'H2', 'uael' ), 'h3' => __( 'H3', 'uael' ), 'h4' => __( 'H4', 'uael' ), 'h5' => __( 'H5', 'uael' ), 'h6' => __( 'H6', 'uael' ), 'div' => __( 'div', 'uael' ), 'p' => __( 'p', 'uael' ), ), 'condition' => array( 'form_title_option!' => 'none', ), 'default' => 'h3', ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'title_typography', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_PRIMARY, ), 'selector' => '{{WRAPPER}} .uael-gf-form-title', 'condition' => array( 'form_title_option!' => 'none', ), ) ); $this->add_control( 'form_title_color', array( 'label' => __( 'Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'global' => array( 'default' => Global_Colors::COLOR_PRIMARY, ), 'condition' => array( 'form_title_option!' => 'none', ), 'default' => '', 'selectors' => array( '{{WRAPPER}} .uael-gf-form-title' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'form_desc_typo', array( 'label' => __( 'Form Description', 'uael' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', 'condition' => array( 'form_title_option!' => 'none', ), ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'desc_typography', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_SECONDARY, ), 'selector' => '{{WRAPPER}} .uael-gf-form-desc, {{WRAPPER}} .uael-gf-style .gform_description', 'condition' => array( 'form_title_option!' => 'none', ), ) ); $this->add_control( 'form_desc_color', array( 'label' => __( 'Color', 'uael' ), 'type' => Controls_Manager::COLOR, 'global' => array( 'default' => Global_Colors::COLOR_TEXT, ), 'condition' => array( 'form_title_option!' => 'none', ), 'default' => '', 'separator' => 'after', 'selectors' => array( '{{WRAPPER}} .uael-gf-form-desc, {{WRAPPER}} .uael-gf-style .gform_description' => 'color: {{VALUE}};', ), ) ); $this->add_control( 'form_input_typo', array( 'label' => __( 'Form Fields', 'uael' ), 'type' => Controls_Manager::HEADING, ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'form_label_typography', 'label' => 'Label Typography', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_TEXT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gfield_label, {{WRAPPER}} .uael-gf-style .gfield_checkbox li label, {{WRAPPER}} .uael-gf-style .gfield_radio li label, {{WRAPPER}} .uael-gf-style .gsection_title, {{WRAPPER}} .uael-gf-style .ginput_product_price, {{WRAPPER}} .uael-gf-style .ginput_product_price_label, {{WRAPPER}} .uael-gf-style .gf_progressbar_title, {{WRAPPER}} .uael-gf-style .ginput_container_consent label, {{WRAPPER}} .uael-gf-style .gf_page_steps, {{WRAPPER}} .uael-gf-style .gfield_checkbox div label, {{WRAPPER}} .uael-gf-style .gfield_radio div label', ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'input_typography', 'label' => 'Text Typography', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_TEXT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gform_wrapper .gfield input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]), {{WRAPPER}} .uael-gf-style .ginput_container select, {{WRAPPER}} .uael-gf-style .ginput_container .chosen-single, {{WRAPPER}} .uael-gf-style .ginput_container textarea, {{WRAPPER}} .uael-gf-style .uael-gf-select-custom', ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'input_desc_typography', 'label' => 'Description Typography', 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_TEXT, ), 'selector' => '{{WRAPPER}} .uael-gf-style .gform_wrapper .gfield .gfield_description, {{WRAPPER}} .uael-gf-style .ginput_container .gfield_post_tags_hint, {{WRAPPER}} .uael-gf-style .ginput_container .gform_fileupload_rules, {{WRAPPER}} .uael-gf-style .ginput_container_name input + label, {{WRAPPER}} .uael-gf-style .ginput_container_creditcard input + span + label, {{WRAPPER}} .uael-gf-style .ginput_container input + label, {{WRAPPER}} .uael-gf-style .ginput_container select + label, {{WRAPPER}} .uael-gf-style .ginput_container .chosen-single + label, {{WRAPPER}} .uael-gf-style .gfield_time_hour label, {{WRAPPER}} .uael-gf-style .gfield_time_minute label, {{WRAPPER}} .uael-gf-style .ginput_container_address label, {{WRAPPER}} .uael-gf-style .ginput_container_total span, {{WRAPPER}} .uael-gf-style .ginput_shipping_price, {{WRAPPER}} .uael-gf-select-custom + label, {{WRAPPER}} .uael-gf-style .gsection_description', ) ); $this->add_control( 'btn_typography_label', array( 'label' => __( 'Button Typography', 'uael' ), 'type' => Controls_Manager::HEADING, 'separator' => 'before', ) ); $this->add_group_control( Group_Control_Typography::get_type(), array( 'name' => 'btn_typography', 'label' => __( 'Typography', 'uael' ), 'global' => array( 'default' => Global_Typography::TYPOGRAPHY_ACCENT, ), 'selector' => '{{WRAPPER}} .uael-gf-style input[type=submit], {{WRAPPER}} .uael-gf-style input[type="button"], {{WRAPPER}} .uael-gf-style .gform-theme.gform-theme--framework.gform_wrapper input[type=submit], {{WRAPPER}} .uael-gf-style .gform_wrapper input[type="button"]', ) ); $this->end_controls_section(); } /** * Helpful Information. * * @since 1.1.0 * @access protected */ protected function register_helpful_information() { if ( parent::is_internal_links() ) { $this->start_controls_section( 'section_helpful_info', array( 'label' => __( 'Helpful Information', 'uael' ), ) ); $this->add_control( 'help_doc_1', array( 'type' => Controls_Manager::RAW_HTML, /* translators: %1$s doc link */ 'raw' => sprintf( __( '%1$s Getting started video ยป %2$s', 'uael' ), '', '' ), 'content_classes' => 'uael-editor-doc', ) ); $this->end_controls_section(); } } /** * GForms Styler refresh button. * * @since 1.2.0 * @access protected */ public function is_reload_preview_required() { return true; } /** * Render GForms Styler output on the frontend. * * Written in PHP and used to generate the final HTML. * * @since 0.0.1 * @access protected */ protected function render() { $settings = $this->get_settings(); ob_start(); include UAEL_MODULES_DIR . 'gf-styler/widgets/template.php'; $html = ob_get_clean(); echo $html; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } }