PluginProbe ʕ •ᴥ•ʔ
Essential Addons for Elementor – Popular Elementor Templates & Widgets / 5.1.4
Essential Addons for Elementor – Popular Elementor Templates & Widgets v5.1.4
6.6.5 6.6.4 6.6.3 5.7.3 5.7.4 5.8.0 5.8.1 5.8.10 5.8.11 5.8.12 5.8.13 5.8.14 5.8.15 5.8.16 5.8.18 5.8.2 5.8.3 5.8.4 5.8.5 5.8.6 5.8.7 5.8.8 5.8.9 5.9.0 5.9.1 5.9.10 5.9.11 5.9.12 5.9.13 5.9.14 5.9.15 5.9.16 5.9.17 5.9.18 5.9.19 5.9.2 5.9.20 5.9.21 5.9.22 5.9.23 5.9.24 5.9.25 5.9.26 5.9.27 5.9.3 5.9.4 5.9.5 5.9.6 5.9.7 5.9.8 5.9.9 6.0.0 6.0.1 6.0.10 6.0.11 6.0.12 6.0.13 6.0.14 6.0.15 6.0.2 6.0.3 6.0.4 6.0.5 6.0.6 6.0.7 6.0.8 6.0.9 6.1.0 6.1.1 6.1.10 6.1.11 trunk 6.1.12 1.0.0 6.1.13 1.0.1 6.1.14 1.1.0 6.1.15 2.0 6.1.17 2.1 6.1.18 2.10.0 6.1.19 2.10.1 6.1.2 2.10.2 6.1.20 2.10.3 6.1.3 2.10.4 6.1.4 2.10.5 6.1.5 2.2.0 6.1.6 2.2.1 6.1.7 2.2.2 6.1.8 2.2.3 6.1.9 2.2.4 6.2.0 2.2.5 6.2.1 2.3.0 6.2.2 2.3.1 6.2.3 2.4.0 6.2.4 2.4.1 6.3.0 2.4.2 6.3.1 2.4.3 6.3.2 2.5.0 6.3.3 2.6.0 6.4.0 2.7.0 6.5.0 2.7.1 6.5.1 2.7.10 6.5.10 2.7.11 6.5.11 2.7.2 6.5.12 2.7.3 6.5.13 2.7.4 6.5.2 2.7.5 6.5.3 2.7.6 6.5.4 2.7.7 6.5.5 2.7.8 6.5.6 2.7.9 6.5.7 2.8.0 6.5.8 2.8.1 6.5.9 2.8.2 6.6.0 2.8.3 6.6.1 2.8.4 6.6.2 2.8.5 2.8.6 2.8.7 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 2.9.9 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.4.1 3.1.5 3.2.0 3.3.0 3.3.1 3.3.2 3.3.3 3.4.0 3.5.0 3.5.1 3.5.2 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.2.0 4.2.1 4.2.2 4.2.3 4.2.4 4.3.0 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.8 4.3.9 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.8.0 4.8.1 4.8.2 4.8.3 4.8.4 4.9.0 4.9.1 4.9.2 4.9.3 4.9.4 4.9.5 4.9.6 4.9.7 5.0.0 5.0.1 5.0.10 5.0.11 5.0.12 5.0.13 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.0.9 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.2.0 5.2.1 5.2.2 5.2.3 5.2.4 5.3.0 5.3.1 5.3.2 5.4.6 5.5.5 5.6.5 5.7.2
essential-addons-for-elementor-lite / includes / Elements / GravityForms.php
essential-addons-for-elementor-lite / includes / Elements Last commit date
Adv_Accordion.php 4 years ago Adv_Tabs.php 4 years ago Advanced_Data_Table.php 4 years ago Better_Payment.php 4 years ago Betterdocs_Category_Box.php 4 years ago Betterdocs_Category_Grid.php 4 years ago Betterdocs_Search_Form.php 4 years ago Caldera_Forms.php 4 years ago Career_Page.php 4 years ago Contact_Form_7.php 4 years ago Content_Ticker.php 4 years ago Countdown.php 4 years ago Creative_Button.php 4 years ago Crowdfundly_All_Campaign.php 4 years ago Crowdfundly_Organization.php 4 years ago Crowdfundly_Single_Campaign.php 4 years ago Cta_Box.php 4 years ago Data_Table.php 4 years ago Dual_Color_Header.php 4 years ago EmbedPress.php 4 years ago Event_Calendar.php 4 years ago Facebook_Feed.php 4 years ago Fancy_Text.php 4 years ago Feature_List.php 4 years ago Filterable_Gallery.php 4 years ago Flip_Box.php 4 years ago FluentForm.php 4 years ago Formstack.php 4 years ago GravityForms.php 4 years ago Image_Accordion.php 4 years ago Info_Box.php 4 years ago Interactive_Circle.php 4 years ago Login_Register.php 4 years ago NinjaForms.php 4 years ago Post_Grid.php 4 years ago Post_Timeline.php 4 years ago Pricing_Table.php 4 years ago Product_Grid.php 4 years ago Progress_Bar.php 4 years ago Simple_Menu.php 4 years ago Sticky_Video.php 4 years ago Team_Member.php 4 years ago Testimonial.php 4 years ago Tooltip.php 4 years ago Twitter_Feed.php 4 years ago TypeForm.php 4 years ago WeForms.php 4 years ago Woo_Cart.php 4 years ago Woo_Checkout.php 4 years ago Woo_Product_Carousel.php 4 years ago Woo_Product_Compare.php 4 years ago Woo_Product_Gallery.php 4 years ago Woocommerce_Review.php 4 years ago WpForms.php 4 years ago
GravityForms.php
2667 lines
1 <?php
2 namespace Essential_Addons_Elementor\Elements;
3
4 // If this file is called directly, abort.
5 if (!defined('ABSPATH')) {
6 exit;
7 }
8
9 use \Elementor\Controls_Manager;
10 use \Elementor\Group_Control_Border;
11 use \Elementor\Group_Control_Box_Shadow;
12 use \Elementor\Group_Control_Typography;
13 use \Elementor\Core\Schemes\Typography;
14 use \Elementor\Widget_Base;
15
16 use \Essential_Addons_Elementor\Classes\Helper;
17
18
19 /**
20 * Gravity Forms Widget
21 */
22 class GravityForms extends Widget_Base {
23
24 /**
25 * Retrieve gravity forms widget name.
26 *
27 * @access public
28 *
29 * @return string Widget name.
30 */
31 public function get_name() {
32 return 'eael-gravity-form';
33 }
34
35 /**
36 * Retrieve gravity forms widget title.
37 *
38 * @access public
39 *
40 * @return string Widget title.
41 */
42 public function get_title() {
43 return __( 'Gravity Forms', 'essential-addons-for-elementor-lite');
44 }
45
46 /**
47 * Retrieve the list of categories the gravity forms widget belongs to.
48 *
49 * Used to determine where to display the widget in the editor.
50 *
51 * @access public
52 *
53 * @return array Widget categories.
54 */
55 public function get_categories() {
56 return [ 'essential-addons-elementor' ];
57 }
58
59 public function get_keywords()
60 {
61 return [
62 'contact form',
63 'ea contact form',
64 'ea gravity form',
65 'ea form styler',
66 'form styler',
67 'elementor form',
68 'feedback',
69 'gravityforms',
70 'ea',
71 'essential addons'
72 ];
73 }
74
75 public function get_custom_help_url()
76 {
77 return 'https://essential-addons.com/elementor/docs/gravity-forms/';
78 }
79
80 /**
81 * Retrieve gravity forms widget icon.
82 *
83 * @access public
84 *
85 * @return string Widget icon.
86 */
87 public function get_icon() {
88 return 'eaicon-gravity-form';
89 }
90
91 /**
92 * Register gravity forms widget controls.
93 *
94 * Adds different input fields to allow the user to change and customize the widget settings.
95 *
96 * @access protected
97 */
98 protected function register_controls() {
99
100 /*-----------------------------------------------------------------------------------*/
101 /* CONTENT TAB
102 /*-----------------------------------------------------------------------------------*/
103 if(!class_exists('\GFForms')) {
104 $this->start_controls_section(
105 'eael_global_warning',
106 [
107 'label' => __( 'Warning!', 'essential-addons-for-elementor-lite'),
108 ]
109 );
110
111 $this->add_control(
112 'eael_global_warning_text',
113 [
114 'type' => Controls_Manager::RAW_HTML,
115 'raw' => __( '<strong>Gravity Forms</strong> is not installed/activated on your site. Please install and activate <strong>Gravity Forms</strong> first.', 'essential-addons-for-elementor-lite'),
116 'content_classes' => 'eael-warning',
117 ]
118 );
119
120 $this->end_controls_section();
121 } else {
122 /**
123 * Content Tab: Contact Form
124 * -------------------------------------------------
125 */
126 $this->start_controls_section(
127 'section_info_box',
128 [
129 'label' => __( 'Gravity Forms', 'essential-addons-for-elementor-lite'),
130 ]
131 );
132
133 $this->add_control(
134 'contact_form_list',
135 [
136 'label' => esc_html__( 'Select Form', 'essential-addons-for-elementor-lite'),
137 'type' => Controls_Manager::SELECT,
138 'label_block' => true,
139 'options' => Helper::get_gravity_form_list(),
140 'default' => '0',
141 ]
142 );
143
144 $this->add_control(
145 'custom_title_description',
146 [
147 'label' => __( 'Custom Title & Description', 'essential-addons-for-elementor-lite'),
148 'type' => Controls_Manager::SWITCHER,
149 'label_on' => __( 'Yes', 'essential-addons-for-elementor-lite'),
150 'label_off' => __( 'No', 'essential-addons-for-elementor-lite'),
151 'return_value' => 'yes',
152 ]
153 );
154
155 $this->add_control(
156 'form_title',
157 [
158 'label' => __( 'Title', 'essential-addons-for-elementor-lite'),
159 'type' => Controls_Manager::SWITCHER,
160 'default' => 'yes',
161 'label_on' => __( 'Show', 'essential-addons-for-elementor-lite'),
162 'label_off' => __( 'Hide', 'essential-addons-for-elementor-lite'),
163 'return_value' => 'yes',
164 'condition' => [
165 'custom_title_description!' => 'yes',
166 ],
167 ]
168 );
169
170 $this->add_control(
171 'form_description',
172 [
173 'label' => __( 'Description', 'essential-addons-for-elementor-lite'),
174 'type' => Controls_Manager::SWITCHER,
175 'default' => 'yes',
176 'label_on' => __( 'Show', 'essential-addons-for-elementor-lite'),
177 'label_off' => __( 'Hide', 'essential-addons-for-elementor-lite'),
178 'return_value' => 'yes',
179 'condition' => [
180 'custom_title_description!' => 'yes',
181 ],
182 ]
183 );
184
185 $this->add_control(
186 'form_title_custom',
187 [
188 'label' => esc_html__( 'Title', 'essential-addons-for-elementor-lite'),
189 'type' => Controls_Manager::TEXT,
190 'dynamic' => [
191 'active' => true,
192 ],
193 'label_block' => true,
194 'default' => '',
195 'condition' => [
196 'custom_title_description' => 'yes',
197 ],
198 ]
199 );
200
201 $this->add_control(
202 'form_description_custom',
203 [
204 'label' => esc_html__( 'Description', 'essential-addons-for-elementor-lite'),
205 'type' => Controls_Manager::TEXTAREA,
206 'dynamic' => [
207 'active' => true,
208 ],
209 'default' => '',
210 'condition' => [
211 'custom_title_description' => 'yes',
212 ],
213 ]
214 );
215
216 $this->add_control(
217 'labels_switch',
218 [
219 'label' => __( 'Labels', 'essential-addons-for-elementor-lite'),
220 'type' => Controls_Manager::SWITCHER,
221 'default' => 'yes',
222 'label_on' => __( 'Show', 'essential-addons-for-elementor-lite'),
223 'label_off' => __( 'Hide', 'essential-addons-for-elementor-lite'),
224 'return_value' => 'yes',
225 ]
226 );
227
228 $this->add_control(
229 'placeholder_switch',
230 [
231 'label' => __( 'Placeholder', 'essential-addons-for-elementor-lite'),
232 'type' => Controls_Manager::SWITCHER,
233 'default' => 'yes',
234 'label_on' => __( 'Show', 'essential-addons-for-elementor-lite'),
235 'label_off' => __( 'Hide', 'essential-addons-for-elementor-lite'),
236 'return_value' => 'yes',
237 ]
238 );
239
240 $this->add_control(
241 'form_ajax',
242 [
243 'label' => __( 'Use Ajax', 'essential-addons-for-elementor-lite'),
244 'type' => Controls_Manager::SWITCHER,
245 'description' => __( 'Use ajax to submit the form', 'essential-addons-for-elementor-lite'),
246 'label_on' => __( 'Yes', 'essential-addons-for-elementor-lite'),
247 'label_off' => __( 'No', 'essential-addons-for-elementor-lite'),
248 'return_value' => 'yes',
249 ]
250 );
251
252 $this->end_controls_section();
253
254 /**
255 * Content Tab: Errors
256 * -------------------------------------------------
257 */
258 $this->start_controls_section(
259 'section_errors',
260 [
261 'label' => __( 'Errors', 'essential-addons-for-elementor-lite'),
262 ]
263 );
264
265 $this->add_control(
266 'error_messages',
267 [
268 'label' => __( 'Error Messages', 'essential-addons-for-elementor-lite'),
269 'type' => Controls_Manager::SELECT,
270 'default' => 'show',
271 'options' => [
272 'show' => __( 'Show', 'essential-addons-for-elementor-lite'),
273 'hide' => __( 'Hide', 'essential-addons-for-elementor-lite'),
274 ],
275 'selectors_dictionary' => [
276 'show' => ' ',
277 'hide' => 'none !important',
278 ],
279 'selectors' => [
280 '{{WRAPPER}} .eael-gravity-form .validation_message' => 'display: {{VALUE}};',
281 ],
282 ]
283 );
284
285 $this->add_control(
286 'validation_errors',
287 [
288 'label' => __( 'Validation Errors', 'essential-addons-for-elementor-lite'),
289 'type' => Controls_Manager::SELECT,
290 'default' => 'show',
291 'options' => [
292 'show' => __( 'Show', 'essential-addons-for-elementor-lite'),
293 'hide' => __( 'Hide', 'essential-addons-for-elementor-lite'),
294 ],
295 'selectors_dictionary' => [
296 'show' => ' ',
297 'hide' => 'none !important',
298 ],
299 'selectors' => [
300 '{{WRAPPER}} .eael-gravity-form .validation_error' => 'display: {{VALUE}};',
301 ],
302 ]
303 );
304
305 $this->end_controls_section();
306 }
307
308 /*-----------------------------------------------------------------------------------*/
309 /* STYLE TAB
310 /*-----------------------------------------------------------------------------------*/
311
312 /**
313 * Style Tab: Form Container
314 * -------------------------------------------------
315 */
316 $this->start_controls_section(
317 'section_container_style',
318 [
319 'label' => __( 'Form Container', 'essential-addons-for-elementor-lite'),
320 'tab' => Controls_Manager::TAB_STYLE,
321 ]
322 );
323
324 $this->add_control(
325 'eael_gravity_form_background',
326 [
327 'label' => esc_html__( 'Form Background Color', 'essential-addons-for-elementor-lite'),
328 'type' => Controls_Manager::COLOR,
329 'selectors' => [
330 '{{WRAPPER}} .eael-contact-form' => 'background: {{VALUE}};',
331 ],
332 ]
333 );
334
335 $this->add_responsive_control(
336 'eael_gravity_form_alignment',
337 [
338 'label' => esc_html__( 'Form Alignment', 'essential-addons-for-elementor-lite'),
339 'type' => Controls_Manager::CHOOSE,
340 'label_block' => true,
341 'options' => [
342 'default' => [
343 'title' => __( 'Default', 'essential-addons-for-elementor-lite'),
344 'icon' => 'eicon-ban',
345 ],
346 'left' => [
347 'title' => esc_html__( 'Left', 'essential-addons-for-elementor-lite'),
348 'icon' => 'eicon-h-align-left',
349 ],
350 'center' => [
351 'title' => esc_html__( 'Center', 'essential-addons-for-elementor-lite'),
352 'icon' => 'eicon-h-align-center',
353 ],
354 'right' => [
355 'title' => esc_html__( 'Right', 'essential-addons-for-elementor-lite'),
356 'icon' => 'eicon-h-align-right',
357 ],
358 ],
359 'default' => 'default',
360 ]
361 );
362
363 $this->add_responsive_control(
364 'eael_gravity_form_width',
365 [
366 'label' => esc_html__( 'Form Width', 'essential-addons-for-elementor-lite'),
367 'type' => Controls_Manager::SLIDER,
368 'size_units' => [ 'px', 'em', '%' ],
369 'range' => [
370 'px' => [
371 'min' => 10,
372 'max' => 1500,
373 ],
374 'em' => [
375 'min' => 1,
376 'max' => 80,
377 ],
378 ],
379 'selectors' => [
380 '{{WRAPPER}} .eael-contact-form' => 'width: {{SIZE}}{{UNIT}};',
381 ],
382 ]
383 );
384
385 $this->add_responsive_control(
386 'eael_gravity_form_max_width',
387 [
388 'label' => esc_html__( 'Form Max Width', 'essential-addons-for-elementor-lite'),
389 'type' => Controls_Manager::SLIDER,
390 'size_units' => [ 'px', 'em', '%' ],
391 'range' => [
392 'px' => [
393 'min' => 10,
394 'max' => 1500,
395 ],
396 'em' => [
397 'min' => 1,
398 'max' => 80,
399 ],
400 ],
401 'selectors' => [
402 '{{WRAPPER}} .eael-contact-form' => 'max-width: {{SIZE}}{{UNIT}};',
403 ],
404 ]
405 );
406
407
408 $this->add_responsive_control(
409 'eael_gravity_form_margin',
410 [
411 'label' => esc_html__( 'Form Margin', 'essential-addons-for-elementor-lite'),
412 'type' => Controls_Manager::DIMENSIONS,
413 'size_units' => [ 'px', 'em', '%' ],
414 'selectors' => [
415 '{{WRAPPER}} .eael-contact-form' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
416 ],
417 ]
418 );
419
420 $this->add_responsive_control(
421 'eael_gravity_form_padding',
422 [
423 'label' => esc_html__( 'Form Padding', 'essential-addons-for-elementor-lite'),
424 'type' => Controls_Manager::DIMENSIONS,
425 'size_units' => [ 'px', 'em', '%' ],
426 'selectors' => [
427 '{{WRAPPER}} .eael-contact-form' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
428 ],
429 ]
430 );
431
432
433 $this->add_control(
434 'eael_gravity_form_border_radius',
435 [
436 'label' => esc_html__( 'Border Radius', 'essential-addons-for-elementor-lite'),
437 'type' => Controls_Manager::DIMENSIONS,
438 'separator' => 'before',
439 'size_units' => [ 'px' ],
440 'selectors' => [
441 '{{WRAPPER}} .eael-contact-form' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
442 ],
443 ]
444 );
445
446
447 $this->add_group_control(
448 Group_Control_Border::get_type(),
449 [
450 'name' => 'eael_gravity_form_border',
451 'selector' => '{{WRAPPER}} .eael-contact-form',
452 ]
453 );
454
455
456 $this->add_group_control(
457 Group_Control_Box_Shadow::get_type(),
458 [
459 'name' => 'eael_gravity_form_box_shadow',
460 'selector' => '{{WRAPPER}} .eael-contact-form',
461 ]
462 );
463
464 $this->end_controls_section();
465 /**
466 * Style Tab: Title and Description
467 * -------------------------------------------------
468 */
469 $this->start_controls_section(
470 'section_general_style',
471 [
472 'label' => __( 'Title & Description', 'essential-addons-for-elementor-lite'),
473 'tab' => Controls_Manager::TAB_STYLE,
474 ]
475 );
476
477 $this->add_responsive_control(
478 'heading_alignment',
479 [
480 'label' => __( 'Alignment', 'essential-addons-for-elementor-lite'),
481 'type' => Controls_Manager::CHOOSE,
482 'options' => [
483 'left' => [
484 'title' => __( 'Left', 'essential-addons-for-elementor-lite'),
485 'icon' => 'eicon-text-align-left',
486 ],
487 'center' => [
488 'title' => __( 'Center', 'essential-addons-for-elementor-lite'),
489 'icon' => 'eicon-text-align-center',
490 ],
491 'right' => [
492 'title' => __( 'Right', 'essential-addons-for-elementor-lite'),
493 'icon' => 'eicon-text-align-right',
494 ],
495 ],
496 'default' => '',
497 'selectors' => [
498 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_heading, {{WRAPPER}} .eael-gravity-form .eael-gravity-form-heading'
499 => 'text-align: {{VALUE}};',
500 ],
501 ]
502 );
503
504 $this->add_control(
505 'title_heading',
506 [
507 'label' => __( 'Title', 'essential-addons-for-elementor-lite'),
508 'type' => Controls_Manager::HEADING,
509 'separator' => 'before',
510 ]
511 );
512
513 $this->add_control(
514 'title_text_color',
515 [
516 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
517 'type' => Controls_Manager::COLOR,
518 'default' => '',
519 'selectors' => [
520 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_title, {{WRAPPER}} .eael-gravity-form .eael-gravity-form-title' => 'color: {{VALUE}}',
521 ],
522 ]
523 );
524
525 $this->add_group_control(
526 Group_Control_Typography::get_type(),
527 [
528 'name' => 'title_typography',
529 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
530 'scheme' => Typography::TYPOGRAPHY_4,
531 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_title, {{WRAPPER}} .eael-gravity-form .eael-gravity-form-title',
532 ]
533 );
534
535 $this->add_control(
536 'description_heading',
537 [
538 'label' => __( 'Description', 'essential-addons-for-elementor-lite'),
539 'type' => Controls_Manager::HEADING,
540 'separator' => 'before',
541 ]
542 );
543
544 $this->add_control(
545 'description_text_color',
546 [
547 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
548 'type' => Controls_Manager::COLOR,
549 'default' => '',
550 'selectors' => [
551 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_description, {{WRAPPER}} .eael-gravity-form .eael-gravity-form-description' => 'color: {{VALUE}}',
552 ],
553 ]
554 );
555
556 $this->add_group_control(
557 Group_Control_Typography::get_type(),
558 [
559 'name' => 'description_typography',
560 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
561 'scheme' => Typography::TYPOGRAPHY_4,
562 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_description, {{WRAPPER}} .eael-gravity-form .eael-gravity-form-description',
563 ]
564 );
565
566 $this->end_controls_section();
567
568 /**
569 * Style Tab: Labels
570 * -------------------------------------------------
571 */
572 $this->start_controls_section(
573 'section_label_style',
574 [
575 'label' => __( 'Labels', 'essential-addons-for-elementor-lite'),
576 'tab' => Controls_Manager::TAB_STYLE,
577 'condition' => [
578 'labels_switch' => 'yes',
579 ],
580 ]
581 );
582
583 $this->add_control(
584 'text_color_label',
585 [
586 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
587 'type' => Controls_Manager::COLOR,
588 'selectors' => [
589 '{{WRAPPER}} .eael-gravity-form .gfield .gfield_label' => 'color: {{VALUE}}',
590 ],
591 'condition' => [
592 'labels_switch' => 'yes',
593 ],
594 ]
595 );
596
597 $this->add_group_control(
598 Group_Control_Typography::get_type(),
599 [
600 'name' => 'typography_label',
601 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
602 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield .gfield_label',
603 'condition' => [
604 'labels_switch' => 'yes',
605 ],
606 ]
607 );
608
609 $this->end_controls_section();
610
611 /**
612 * Style Tab: Sub-Labels
613 * -------------------------------------------------
614 */
615 $this->start_controls_section(
616 'section_sub_label_style',
617 [
618 'label' => __( 'Sub-Labels', 'essential-addons-for-elementor-lite'),
619 'tab' => Controls_Manager::TAB_STYLE,
620 'condition' => [
621 'labels_switch' => 'yes',
622 ],
623 ]
624 );
625
626 $this->add_control(
627 'text_color_sub_label',
628 [
629 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
630 'type' => Controls_Manager::COLOR,
631 'selectors' => [
632 '{{WRAPPER}} .eael-gravity-form .gfield label' => 'color: {{VALUE}}',
633 ],
634 'condition' => [
635 'labels_switch' => 'yes',
636 ],
637 ]
638 );
639
640 $this->add_group_control(
641 Group_Control_Typography::get_type(),
642 [
643 'name' => 'typography_sub_label',
644 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
645 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield label',
646 'condition' => [
647 'labels_switch' => 'yes',
648 ],
649 ]
650 );
651
652 $this->end_controls_section();
653
654 /**
655 * Style Tab: Input & Textarea
656 * -------------------------------------------------
657 */
658 $this->start_controls_section(
659 'section_fields_style',
660 [
661 'label' => __( 'Input & Textarea', 'essential-addons-for-elementor-lite'),
662 'tab' => Controls_Manager::TAB_STYLE,
663 ]
664 );
665
666 $this->add_responsive_control(
667 'input_alignment',
668 [
669 'label' => __( 'Alignment', 'essential-addons-for-elementor-lite'),
670 'type' => Controls_Manager::CHOOSE,
671 'options' => [
672 'left' => [
673 'title' => __( 'Left', 'essential-addons-for-elementor-lite'),
674 'icon' => 'eicon-text-align-left',
675 ],
676 'center' => [
677 'title' => __( 'Center', 'essential-addons-for-elementor-lite'),
678 'icon' => 'eicon-text-align-center',
679 ],
680 'right' => [
681 'title' => __( 'Right', 'essential-addons-for-elementor-lite'),
682 'icon' => 'eicon-text-align-right',
683 ],
684 ],
685 'default' => '',
686 'selectors' => [
687 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea' => 'text-align: {{VALUE}};',
688 ],
689 ]
690 );
691
692 $this->start_controls_tabs( 'tabs_fields_style' );
693
694 $this->start_controls_tab(
695 'tab_fields_normal',
696 [
697 'label' => __( 'Normal', 'essential-addons-for-elementor-lite'),
698 ]
699 );
700
701 $this->add_control(
702 'field_bg_color',
703 [
704 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
705 'type' => Controls_Manager::COLOR,
706 'default' => '',
707 'selectors' => [
708 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea, {{WRAPPER}} .eael-gravity-form .gfield select' => 'background-color: {{VALUE}}',
709 ],
710 ]
711 );
712
713 $this->add_control(
714 'field_text_color',
715 [
716 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
717 'type' => Controls_Manager::COLOR,
718 'default' => '',
719 'selectors' => [
720 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea, {{WRAPPER}} .eael-gravity-form .gfield select' => 'color: {{VALUE}}',
721 ],
722 ]
723 );
724
725 $this->add_responsive_control(
726 'field_spacing',
727 [
728 'label' => __( 'Spacing', 'essential-addons-for-elementor-lite'),
729 'type' => Controls_Manager::SLIDER,
730 'range' => [
731 'px' => [
732 'min' => 0,
733 'max' => 100,
734 'step' => 1,
735 ],
736 ],
737 'size_units' => [ 'px', 'em', '%' ],
738 'selectors' => [
739 '{{WRAPPER}} .eael-gravity-form .gfield' => 'margin-bottom: {{SIZE}}{{UNIT}}',
740 ],
741 ]
742 );
743
744 $this->add_responsive_control(
745 'field_spacing_right',
746 [
747 'label' => __( 'Spacing Right', 'essential-addons-for-elementor-lite'),
748 'type' => Controls_Manager::SLIDER,
749 'range' => [
750 'px' => [
751 'min' => 0,
752 'max' => 100,
753 'step' => 1,
754 ],
755 ],
756 'size_units' => [ 'px', 'em', '%' ],
757 'selectors' => [
758 '{{WRAPPER}} .eael-gravity-form .gfield.gf_left_half' => 'padding-right: {{SIZE}}{{UNIT}}',
759 ],
760 ]
761 );
762
763 $this->add_responsive_control(
764 'field_padding',
765 [
766 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
767 'type' => Controls_Manager::DIMENSIONS,
768 'size_units' => [ 'px', 'em', '%' ],
769 'selectors' => [
770 '{{WRAPPER}} .eael-gravity-form .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), {{WRAPPER}} .eael-gravity-form .gfield textarea' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
771 ],
772 ]
773 );
774
775 $this->add_responsive_control(
776 'text_indent',
777 [
778 'label' => __( 'Text Indent', 'essential-addons-for-elementor-lite'),
779 'type' => Controls_Manager::SLIDER,
780 'range' => [
781 'px' => [
782 'min' => 0,
783 'max' => 60,
784 'step' => 1,
785 ],
786 '%' => [
787 'min' => 0,
788 'max' => 30,
789 'step' => 1,
790 ],
791 ],
792 'size_units' => [ 'px', 'em', '%' ],
793 'selectors' => [
794 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea, {{WRAPPER}} .eael-gravity-form .gfield select' => 'text-indent: {{SIZE}}{{UNIT}}',
795 ],
796 ]
797 );
798
799 $this->add_responsive_control(
800 'input_width',
801 [
802 'label' => __( 'Input Width', 'essential-addons-for-elementor-lite'),
803 'type' => Controls_Manager::SLIDER,
804 'range' => [
805 'px' => [
806 'min' => 0,
807 'max' => 1200,
808 'step' => 1,
809 ],
810 ],
811 'size_units' => [ 'px', 'em', '%' ],
812 'selectors' => [
813 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield select' => 'width: {{SIZE}}{{UNIT}}',
814 ],
815 ]
816 );
817
818 $this->add_responsive_control(
819 'input_height',
820 [
821 'label' => __( 'Input Height', 'essential-addons-for-elementor-lite'),
822 'type' => Controls_Manager::SLIDER,
823 'range' => [
824 'px' => [
825 'min' => 0,
826 'max' => 80,
827 'step' => 1,
828 ],
829 ],
830 'size_units' => [ 'px', 'em', '%' ],
831 'selectors' => [
832 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="url"], {{WRAPPER}} .eael-gravity-form .gfield select' => 'height: {{SIZE}}{{UNIT}}',
833 ],
834 ]
835 );
836
837 $this->add_responsive_control(
838 'textarea_width',
839 [
840 'label' => __( 'Textarea Width', 'essential-addons-for-elementor-lite'),
841 'type' => Controls_Manager::SLIDER,
842 'range' => [
843 'px' => [
844 'min' => 0,
845 'max' => 1200,
846 'step' => 1,
847 ],
848 ],
849 'size_units' => [ 'px', 'em', '%' ],
850 'selectors' => [
851 '{{WRAPPER}} .eael-gravity-form .gfield textarea' => 'width: {{SIZE}}{{UNIT}}',
852 ],
853 ]
854 );
855
856 $this->add_responsive_control(
857 'textarea_height',
858 [
859 'label' => __( 'Textarea Height', 'essential-addons-for-elementor-lite'),
860 'type' => Controls_Manager::SLIDER,
861 'range' => [
862 'px' => [
863 'min' => 0,
864 'max' => 400,
865 'step' => 1,
866 ],
867 ],
868 'size_units' => [ 'px', 'em', '%' ],
869 'selectors' => [
870 '{{WRAPPER}} .eael-gravity-form .gfield textarea' => 'height: {{SIZE}}{{UNIT}}',
871 ],
872 ]
873 );
874
875 $this->add_group_control(
876 Group_Control_Border::get_type(),
877 [
878 'name' => 'field_border',
879 'label' => __( 'Border', 'essential-addons-for-elementor-lite'),
880 'placeholder' => '1px',
881 'default' => '1px',
882 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea, {{WRAPPER}} .eael-gravity-form .gfield select',
883 'separator' => 'before',
884 ]
885 );
886
887 $this->add_control(
888 'field_radius',
889 [
890 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
891 'type' => Controls_Manager::DIMENSIONS,
892 'size_units' => [ 'px', 'em', '%' ],
893 'selectors' => [
894 '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
895 ],
896 ]
897 );
898
899 $this->add_group_control(
900 Group_Control_Typography::get_type(),
901 [
902 'name' => 'field_typography',
903 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
904 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield .ginput_container input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container_date input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container_phone input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container_email input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield .ginput_container_text input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield textarea, {{WRAPPER}} .eael-gravity-form .gfield select',
905 'separator' => 'before',
906 ]
907 );
908
909 $this->add_group_control(
910 Group_Control_Box_Shadow::get_type(),
911 [
912 'name' => 'field_box_shadow',
913 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield input[type="text"], {{WRAPPER}} .eael-gravity-form .gfield input[type="email"], {{WRAPPER}} .eael-gravity-form .gfield input[type="tel"], {{WRAPPER}} .eael-gravity-form .gfield input[type="number"], {{WRAPPER}} .eael-gravity-form .gfield textarea, {{WRAPPER}} .eael-gravity-form .gfield select',
914 'separator' => 'before',
915 ]
916 );
917
918 $this->end_controls_tab();
919
920 $this->start_controls_tab(
921 'tab_fields_focus',
922 [
923 'label' => __( 'Focus', 'essential-addons-for-elementor-lite'),
924 ]
925 );
926
927 $this->add_control(
928 'field_bg_color_focus',
929 [
930 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
931 'type' => Controls_Manager::COLOR,
932 'default' => '',
933 'selectors' => [
934 '{{WRAPPER}} .eael-gravity-form .gfield input:focus, {{WRAPPER}} .eael-gravity-form .gfield textarea:focus' => 'background-color: {{VALUE}}',
935 ],
936 ]
937 );
938
939 $this->add_group_control(
940 Group_Control_Border::get_type(),
941 [
942 'name' => 'focus_input_border',
943 'label' => __( 'Border', 'essential-addons-for-elementor-lite'),
944 'placeholder' => '1px',
945 'default' => '1px',
946 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield input:focus, {{WRAPPER}} .eael-gravity-form .gfield textarea:focus',
947 ]
948 );
949
950 $this->add_group_control(
951 Group_Control_Box_Shadow::get_type(),
952 [
953 'name' => 'focus_box_shadow',
954 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield input:focus, {{WRAPPER}} .eael-gravity-form .gfield textarea:focus',
955 'separator' => 'before',
956 ]
957 );
958
959 $this->end_controls_tab();
960
961 $this->end_controls_tabs();
962
963 $this->end_controls_section();
964
965 /**
966 * Style Tab: Field Description
967 * -------------------------------------------------
968 */
969 $this->start_controls_section(
970 'section_field_description_style',
971 [
972 'label' => __( 'Field Description', 'essential-addons-for-elementor-lite'),
973 'tab' => Controls_Manager::TAB_STYLE,
974 ]
975 );
976
977 $this->add_control(
978 'field_description_text_color',
979 [
980 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
981 'type' => Controls_Manager::COLOR,
982 'selectors' => [
983 '{{WRAPPER}} .eael-gravity-form .gfield .gfield_description' => 'color: {{VALUE}}',
984 ],
985 ]
986 );
987
988 $this->add_group_control(
989 Group_Control_Typography::get_type(),
990 [
991 'name' => 'field_description_typography',
992 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
993 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield .gfield_description',
994 ]
995 );
996
997 $this->add_responsive_control(
998 'field_description_spacing',
999 [
1000 'label' => __( 'Spacing', 'essential-addons-for-elementor-lite'),
1001 'type' => Controls_Manager::SLIDER,
1002 'range' => [
1003 'px' => [
1004 'min' => 0,
1005 'max' => 100,
1006 'step' => 1,
1007 ],
1008 ],
1009 'size_units' => [ 'px', 'em', '%' ],
1010 'selectors' => [
1011 '{{WRAPPER}} .eael-gravity-form .gfield .gfield_description' => 'padding-top: {{SIZE}}{{UNIT}}',
1012 ],
1013 ]
1014 );
1015
1016 $this->end_controls_section();
1017
1018 /**
1019 * Style Tab: Section Field
1020 * -------------------------------------------------
1021 */
1022 $this->start_controls_section(
1023 'section_field_style',
1024 [
1025 'label' => __( 'Section Field', 'essential-addons-for-elementor-lite'),
1026 'tab' => Controls_Manager::TAB_STYLE,
1027 ]
1028 );
1029
1030 $this->add_control(
1031 'section_field_text_color',
1032 [
1033 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
1034 'type' => Controls_Manager::COLOR,
1035 'default' => '',
1036 'selectors' => [
1037 '{{WRAPPER}} .eael-gravity-form .gfield.gsection .gsection_title' => 'color: {{VALUE}}',
1038 ],
1039 ]
1040 );
1041
1042 $this->add_group_control(
1043 Group_Control_Typography::get_type(),
1044 [
1045 'name' => 'section_field_typography',
1046 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
1047 'scheme' => Typography::TYPOGRAPHY_4,
1048 'selector' => '{{WRAPPER}} .eael-gravity-form .gfield.gsection .gsection_title',
1049 'separator' => 'before',
1050 ]
1051 );
1052
1053 $this->add_control(
1054 'section_field_border_type',
1055 [
1056 'label' => __( 'Border Type', 'essential-addons-for-elementor-lite'),
1057 'type' => Controls_Manager::SELECT,
1058 'default' => 'solid',
1059 'options' => [
1060 'none' => __( 'None', 'essential-addons-for-elementor-lite'),
1061 'solid' => __( 'Solid', 'essential-addons-for-elementor-lite'),
1062 'double' => __( 'Double', 'essential-addons-for-elementor-lite'),
1063 'dotted' => __( 'Dotted', 'essential-addons-for-elementor-lite'),
1064 'dashed' => __( 'Dashed', 'essential-addons-for-elementor-lite'),
1065 ],
1066 'selectors' => [
1067 '{{WRAPPER}} .eael-gravity-form .gfield.gsection' => 'border-bottom-style: {{VALUE}}',
1068 ],
1069 'separator' => 'before',
1070 ]
1071 );
1072
1073 $this->add_responsive_control(
1074 'section_field_border_height',
1075 [
1076 'label' => __( 'Border Height', 'essential-addons-for-elementor-lite'),
1077 'type' => Controls_Manager::SLIDER,
1078 'default' => [
1079 'size' => 1,
1080 ],
1081 'range' => [
1082 'px' => [
1083 'min' => 1,
1084 'max' => 20,
1085 'step' => 1,
1086 ],
1087 ],
1088 'size_units' => [ 'px' ],
1089 'selectors' => [
1090 '{{WRAPPER}} .eael-gravity-form .gfield.gsection' => 'border-bottom-width: {{SIZE}}{{UNIT}}',
1091 ],
1092 'condition' => [
1093 'section_field_border_type!' => 'none',
1094 ],
1095 ]
1096 );
1097
1098 $this->add_control(
1099 'section_field_border_color',
1100 [
1101 'label' => __( 'Border Color', 'essential-addons-for-elementor-lite'),
1102 'type' => Controls_Manager::COLOR,
1103 'default' => '',
1104 'selectors' => [
1105 '{{WRAPPER}} .eael-gravity-form .gfield.gsection' => 'border-bottom-color: {{VALUE}}',
1106 ],
1107 'condition' => [
1108 'section_field_border_type!' => 'none',
1109 ],
1110 ]
1111 );
1112
1113 $this->add_responsive_control(
1114 'section_field_margin',
1115 [
1116 'label' => __( 'Margin', 'essential-addons-for-elementor-lite'),
1117 'type' => Controls_Manager::DIMENSIONS,
1118 'size_units' => [ 'px', 'em', '%' ],
1119 'selectors' => [
1120 '{{WRAPPER}} .eael-gravity-form .gfield.gsection' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1121 ],
1122 'separator' => 'before',
1123 ]
1124 );
1125
1126 $this->end_controls_section();
1127
1128 /**
1129 * Style Tab: Section Field
1130 * -------------------------------------------------
1131 */
1132 $this->start_controls_section(
1133 'section_price_style',
1134 [
1135 'label' => __( 'Price', 'essential-addons-for-elementor-lite'),
1136 'tab' => Controls_Manager::TAB_STYLE,
1137 ]
1138 );
1139
1140 $this->add_control(
1141 'price_label_color',
1142 [
1143 'label' => __( 'Price Label Color', 'essential-addons-for-elementor-lite'),
1144 'type' => Controls_Manager::COLOR,
1145 'default' => '',
1146 'selectors' => [
1147 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .ginput_product_price_label' => 'color: {{VALUE}}',
1148 ],
1149 ]
1150 );
1151
1152 $this->add_control(
1153 'price_text_color',
1154 [
1155 'label' => __( 'Price Color', 'essential-addons-for-elementor-lite'),
1156 'type' => Controls_Manager::COLOR,
1157 'default' => '',
1158 'selectors' => [
1159 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .ginput_product_price' => 'color: {{VALUE}}',
1160 ],
1161 ]
1162 );
1163
1164 $this->end_controls_section();
1165
1166 /**
1167 * Style Tab: Section Field
1168 * -------------------------------------------------
1169 */
1170 $this->start_controls_section(
1171 'section_total_price_style',
1172 [
1173 'label' => __( 'Total Price', 'essential-addons-for-elementor-lite'),
1174 'tab' => Controls_Manager::TAB_STYLE,
1175 ]
1176 );
1177
1178 $this->add_group_control(
1179 Group_Control_Typography::get_type(),
1180 [
1181 'name' => 'total_price_typography',
1182 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
1183 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_wrapper .ginput_container_total .ginput_total',
1184 'separator' => 'before',
1185 ]
1186 );
1187
1188 $this->add_control(
1189 'total_price_text_color',
1190 [
1191 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1192 'type' => Controls_Manager::COLOR,
1193 'default' => '',
1194 'selectors' => [
1195 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .ginput_container_total .ginput_total' => 'color: {{VALUE}}',
1196 ],
1197 ]
1198 );
1199
1200 $this->end_controls_section();
1201
1202 /**
1203 * Style Tab: Placeholder
1204 * -------------------------------------------------
1205 */
1206 $this->start_controls_section(
1207 'section_placeholder_style',
1208 [
1209 'label' => __( 'Placeholder', 'essential-addons-for-elementor-lite'),
1210 'tab' => Controls_Manager::TAB_STYLE,
1211 'condition' => [
1212 'placeholder_switch' => 'yes',
1213 ],
1214 ]
1215 );
1216
1217 $this->add_control(
1218 'text_color_placeholder',
1219 [
1220 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
1221 'type' => Controls_Manager::COLOR,
1222 'selectors' => [
1223 '{{WRAPPER}} .eael-gravity-form .gfield input::-webkit-input-placeholder, {{WRAPPER}} .eael-gravity-form .gfield textarea::-webkit-input-placeholder' => 'color: {{VALUE}}',
1224 ],
1225 'condition' => [
1226 'placeholder_switch' => 'yes',
1227 ],
1228 ]
1229 );
1230
1231 $this->end_controls_section();
1232
1233 /**
1234 * Style Tab: Checkbox
1235 * -------------------------------------------------
1236 */
1237 $this->start_controls_section(
1238 'section_checkbox_style',
1239 [
1240 'label' => __( 'Checkbox', 'essential-addons-for-elementor-lite'),
1241 'tab' => Controls_Manager::TAB_STYLE,
1242 ]
1243 );
1244
1245 $this->add_control(
1246 'custom_radio_checkbox',
1247 [
1248 'label' => __( 'Custom Styles', 'essential-addons-for-elementor-lite'),
1249 'type' => Controls_Manager::SWITCHER,
1250 'label_on' => __( 'Yes', 'essential-addons-for-elementor-lite'),
1251 'label_off' => __( 'No', 'essential-addons-for-elementor-lite'),
1252 'return_value' => 'yes',
1253 ]
1254 );
1255
1256 $this->add_responsive_control(
1257 'checkbox_size',
1258 [
1259 'label' => __( 'Size', 'essential-addons-for-elementor-lite'),
1260 'type' => Controls_Manager::SLIDER,
1261 'default' => [
1262 'size' => '15',
1263 'unit' => 'px'
1264 ],
1265 'range' => [
1266 'px' => [
1267 'min' => 0,
1268 'max' => 80,
1269 'step' => 1,
1270 ],
1271 ],
1272 'size_units' => [ 'px', 'em', '%' ],
1273 'selectors' => [
1274 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]' => 'width: {{SIZE}}{{UNIT}} !important; height: {{SIZE}}{{UNIT}}',
1275 ],
1276 'condition' => [
1277 'custom_radio_checkbox' => 'yes',
1278 ],
1279 ]
1280 );
1281
1282 $this->start_controls_tabs( 'tabs_checkbox_style' );
1283
1284 $this->start_controls_tab(
1285 'checkbox_normal',
1286 [
1287 'label' => __( 'Normal', 'essential-addons-for-elementor-lite'),
1288 'condition' => [
1289 'custom_radio_checkbox' => 'yes',
1290 ],
1291 ]
1292 );
1293
1294 $this->add_control(
1295 'checkbox_color',
1296 [
1297 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1298 'type' => Controls_Manager::COLOR,
1299 'default' => '',
1300 'selectors' => [
1301 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]' => 'background: {{VALUE}}',
1302 ],
1303 'condition' => [
1304 'custom_radio_checkbox' => 'yes',
1305 ],
1306 ]
1307 );
1308
1309 $this->add_responsive_control(
1310 'checkbox_border_width',
1311 [
1312 'label' => __( 'Border Width', 'essential-addons-for-elementor-lite'),
1313 'type' => Controls_Manager::SLIDER,
1314 'range' => [
1315 'px' => [
1316 'min' => 0,
1317 'max' => 15,
1318 'step' => 1,
1319 ],
1320 ],
1321 'size_units' => [ 'px' ],
1322 'selectors' => [
1323 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]' => 'border-width: {{SIZE}}{{UNIT}}',
1324 ],
1325 'condition' => [
1326 'custom_radio_checkbox' => 'yes',
1327 ],
1328 ]
1329 );
1330
1331 $this->add_control(
1332 'checkbox_border_color',
1333 [
1334 'label' => __( 'Border Color', 'essential-addons-for-elementor-lite'),
1335 'type' => Controls_Manager::COLOR,
1336 'default' => '',
1337 'selectors' => [
1338 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]' => 'border-color: {{VALUE}}',
1339 ],
1340 'condition' => [
1341 'custom_radio_checkbox' => 'yes',
1342 ],
1343 ]
1344 );
1345
1346 $this->add_control(
1347 'checkbox_heading',
1348 [
1349 'label' => __( 'Checkbox', 'essential-addons-for-elementor-lite'),
1350 'type' => Controls_Manager::HEADING,
1351 'condition' => [
1352 'custom_radio_checkbox' => 'yes',
1353 ],
1354 ]
1355 );
1356
1357 $this->add_control(
1358 'checkbox_border_radius',
1359 [
1360 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
1361 'type' => Controls_Manager::DIMENSIONS,
1362 'size_units' => [ 'px', 'em', '%' ],
1363 'selectors' => [
1364 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"], {{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]:before' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1365 ],
1366 'condition' => [
1367 'custom_radio_checkbox' => 'yes',
1368 ],
1369 ]
1370 );
1371
1372 $this->add_responsive_control(
1373 'checkbox_margin',
1374 [
1375 'label' => esc_html__( 'Margin', 'essential-addons-for-elementor-lite'),
1376 'type' => Controls_Manager::DIMENSIONS,
1377 'size_units' => [ 'px', 'em', '%' ],
1378 'selectors' => [
1379 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1380 ],
1381 ]
1382 );
1383
1384 $this->add_responsive_control(
1385 'checkbox_padding',
1386 [
1387 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
1388 'type' => Controls_Manager::DIMENSIONS,
1389 'size_units' => [ 'px', 'em', '%' ],
1390 'selectors' => [
1391 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1392 ],
1393 ]
1394 );
1395
1396 $this->end_controls_tab();
1397
1398 $this->start_controls_tab(
1399 'checkbox_checked',
1400 [
1401 'label' => __( 'Checked', 'essential-addons-for-elementor-lite'),
1402 'condition' => [
1403 'custom_radio_checkbox' => 'yes',
1404 ],
1405 ]
1406 );
1407
1408 $this->add_control(
1409 'checkbox_color_checked',
1410 [
1411 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1412 'type' => Controls_Manager::COLOR,
1413 'default' => '',
1414 'selectors' => [
1415 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="checkbox"]:checked:before' => 'background: {{VALUE}}',
1416 ],
1417 'condition' => [
1418 'custom_radio_checkbox' => 'yes',
1419 ],
1420 ]
1421 );
1422
1423 $this->end_controls_tab();
1424
1425 $this->end_controls_tabs();
1426
1427 $this->end_controls_section();
1428
1429 /**
1430 * Style Tab: Radio
1431 * -------------------------------------------------
1432 */
1433 $this->start_controls_section(
1434 'section_radio_style',
1435 [
1436 'label' => __( 'Radio', 'essential-addons-for-elementor-lite'),
1437 'tab' => Controls_Manager::TAB_STYLE,
1438 ]
1439 );
1440
1441 $this->add_control(
1442 'custom_radio_style',
1443 [
1444 'label' => __( 'Custom Styles', 'essential-addons-for-elementor-lite'),
1445 'type' => Controls_Manager::SWITCHER,
1446 'label_on' => __( 'Yes', 'essential-addons-for-elementor-lite'),
1447 'label_off' => __( 'No', 'essential-addons-for-elementor-lite'),
1448 'return_value' => 'yes',
1449 ]
1450 );
1451
1452 $this->add_responsive_control(
1453 'radio_size',
1454 [
1455 'label' => __( 'Size', 'essential-addons-for-elementor-lite'),
1456 'type' => Controls_Manager::SLIDER,
1457 'default' => [
1458 'size' => '15',
1459 'unit' => 'px'
1460 ],
1461 'range' => [
1462 'px' => [
1463 'min' => 0,
1464 'max' => 80,
1465 'step' => 1,
1466 ],
1467 ],
1468 'size_units' => [ 'px', 'em', '%' ],
1469 'selectors' => [
1470 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]' => 'width: {{SIZE}}{{UNIT}} !important; height: {{SIZE}}{{UNIT}}',
1471 ],
1472 'condition' => [
1473 'custom_radio_style' => 'yes',
1474 ],
1475 ]
1476 );
1477
1478 $this->start_controls_tabs( 'tabs_radio_style' );
1479
1480 $this->start_controls_tab(
1481 'radio_normal',
1482 [
1483 'label' => __( 'Normal', 'essential-addons-for-elementor-lite'),
1484 'condition' => [
1485 'custom_radio_style' => 'yes',
1486 ],
1487 ]
1488 );
1489
1490 $this->add_control(
1491 'radio_color',
1492 [
1493 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1494 'type' => Controls_Manager::COLOR,
1495 'default' => '',
1496 'selectors' => [
1497 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]' => 'background: {{VALUE}}',
1498 ],
1499 'condition' => [
1500 'custom_radio_style' => 'yes',
1501 ],
1502 ]
1503 );
1504
1505 $this->add_responsive_control(
1506 'radio_border_width',
1507 [
1508 'label' => __( 'Border Width', 'essential-addons-for-elementor-lite'),
1509 'type' => Controls_Manager::SLIDER,
1510 'range' => [
1511 'px' => [
1512 'min' => 0,
1513 'max' => 15,
1514 'step' => 1,
1515 ],
1516 ],
1517 'size_units' => [ 'px' ],
1518 'selectors' => [
1519 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]' => 'border-width: {{SIZE}}{{UNIT}}',
1520 ],
1521 'condition' => [
1522 'custom_radio_style' => 'yes',
1523 ],
1524 ]
1525 );
1526
1527 $this->add_control(
1528 'radio_border_color',
1529 [
1530 'label' => __( 'Border Color', 'essential-addons-for-elementor-lite'),
1531 'type' => Controls_Manager::COLOR,
1532 'default' => '',
1533 'selectors' => [
1534 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]' => 'border-color: {{VALUE}}',
1535 ],
1536 'condition' => [
1537 'custom_radio_style' => 'yes',
1538 ],
1539 ]
1540 );
1541
1542 $this->add_control(
1543 'radio_heading',
1544 [
1545 'label' => __( 'Radio Buttons', 'essential-addons-for-elementor-lite'),
1546 'type' => Controls_Manager::HEADING,
1547 'condition' => [
1548 'custom_radio_style' => 'yes',
1549 ],
1550 ]
1551 );
1552
1553 $this->add_control(
1554 'radio_border_radius',
1555 [
1556 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
1557 'type' => Controls_Manager::DIMENSIONS,
1558 'size_units' => [ 'px', 'em', '%' ],
1559 'selectors' => [
1560 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"], {{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]:before' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1561 ],
1562 'condition' => [
1563 'custom_radio_style' => 'yes',
1564 ],
1565 ]
1566 );
1567
1568 $this->add_responsive_control(
1569 'radio_margin',
1570 [
1571 'label' => esc_html__( 'Margin', 'essential-addons-for-elementor-lite'),
1572 'type' => Controls_Manager::DIMENSIONS,
1573 'size_units' => [ 'px', 'em', '%' ],
1574 'selectors' => [
1575 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1576 ],
1577 ]
1578 );
1579
1580 $this->add_responsive_control(
1581 'radio_padding',
1582 [
1583 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
1584 'type' => Controls_Manager::DIMENSIONS,
1585 'size_units' => [ 'px', 'em', '%' ],
1586 'selectors' => [
1587 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1588 ],
1589 ]
1590 );
1591
1592 $this->end_controls_tab();
1593
1594 $this->start_controls_tab(
1595 'radio_checked',
1596 [
1597 'label' => __( 'Checked', 'essential-addons-for-elementor-lite'),
1598 'condition' => [
1599 'custom_radio_style' => 'yes',
1600 ],
1601 ]
1602 );
1603
1604 $this->add_control(
1605 'radio_color_checked',
1606 [
1607 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1608 'type' => Controls_Manager::COLOR,
1609 'default' => '',
1610 'selectors' => [
1611 '{{WRAPPER}} .eael-custom-radio-checkbox input[type="radio"]:checked:before' => 'background: {{VALUE}}',
1612 ],
1613 'condition' => [
1614 'custom_radio_style' => 'yes',
1615 ],
1616 ]
1617 );
1618
1619 $this->end_controls_tab();
1620
1621 $this->end_controls_tabs();
1622
1623 $this->end_controls_section();
1624
1625 /**
1626 * Style Tab: File upload
1627 * -------------------------------------------------
1628 */
1629 $this->start_controls_section(
1630 'file_upload_style',
1631 [
1632 'label' => __( 'File Upload', 'essential-addons-for-elementor-lite'),
1633 'tab' => Controls_Manager::TAB_STYLE,
1634 ]
1635 );
1636
1637 $this->start_controls_tabs( 'file_upload_tabs_button_style' );
1638
1639 $this->start_controls_tab(
1640 'file_upload_tab_button_normal',
1641 [
1642 'label' => __( 'Normal', 'essential-addons-for-elementor-lite'),
1643 ]
1644 );
1645
1646 $this->add_control(
1647 'file_upload_button_bg_color_normal',
1648 [
1649 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
1650 'type' => Controls_Manager::COLOR,
1651 'default' => '',
1652 'selectors' => [
1653 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button' => 'background-color: {{VALUE}}',
1654 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button' => 'background-color: {{VALUE}}',
1655 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button' => 'background-color: {{VALUE}}',
1656 ],
1657 ]
1658 );
1659
1660 $this->add_control(
1661 'file_upload_button_text_color_normal',
1662 [
1663 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
1664 'type' => Controls_Manager::COLOR,
1665 'default' => '',
1666 'selectors' => [
1667 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button' => 'color: {{VALUE}}',
1668 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button' => 'color: {{VALUE}}',
1669 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button' => 'color: {{VALUE}}',
1670 ],
1671 ]
1672 );
1673
1674 $this->add_group_control(
1675 Group_Control_Border::get_type(),
1676 [
1677 'name' => 'file_upload_button_border_normal',
1678 'label' => __( 'Border', 'essential-addons-for-elementor-lite'),
1679 'placeholder' => '1px',
1680 'default' => '1px',
1681 'selector' => '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button, {{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button, {{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button',
1682 ]
1683 );
1684
1685 $this->add_control(
1686 'file_upload_button_border_radius',
1687 [
1688 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
1689 'type' => Controls_Manager::DIMENSIONS,
1690 'size_units' => [ 'px', 'em', '%' ],
1691 'selectors' => [
1692 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1693 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1694 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1695 ],
1696 ]
1697 );
1698
1699 $this->add_responsive_control(
1700 'file_upload_button_padding',
1701 [
1702 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
1703 'type' => Controls_Manager::DIMENSIONS,
1704 'size_units' => [ 'px', 'em', '%' ],
1705 'selectors' => [
1706 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1707 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1708 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1709 ],
1710 ]
1711 );
1712
1713 $this->end_controls_tab();
1714
1715 $this->start_controls_tab(
1716 'file_upload_tab_button_hover',
1717 [
1718 'label' => __( 'Hover', 'essential-addons-for-elementor-lite'),
1719 ]
1720 );
1721
1722 $this->add_control(
1723 'file_upload_button_bg_color_hover',
1724 [
1725 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
1726 'type' => Controls_Manager::COLOR,
1727 'default' => '',
1728 'selectors' => [
1729 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button:hover' => 'background-color: {{VALUE}}',
1730 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button:hover' => 'background-color: {{VALUE}}',
1731 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button:hover' => 'background-color: {{VALUE}}',
1732 ],
1733 ]
1734 );
1735
1736 $this->add_control(
1737 'file_upload_button_text_color_hover',
1738 [
1739 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
1740 'type' => Controls_Manager::COLOR,
1741 'default' => '',
1742 'selectors' => [
1743 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button:hover' => 'color: {{VALUE}}',
1744 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button:hover' => 'color: {{VALUE}}',
1745 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button:hover' => 'color: {{VALUE}}',
1746 ],
1747 ]
1748 );
1749
1750 $this->add_control(
1751 'file_upload_button_border_color_hover',
1752 [
1753 'label' => __( 'Border Color', 'essential-addons-for-elementor-lite'),
1754 'type' => Controls_Manager::COLOR,
1755 'default' => '',
1756 'selectors' => [
1757 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button:hover' => 'border-color: {{VALUE}}',
1758 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button:hover' => 'border-color: {{VALUE}}',
1759 '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button:hover' => 'border-color: {{VALUE}}',
1760 ],
1761 ]
1762 );
1763
1764 $this->end_controls_tab();
1765
1766 $this->end_controls_tabs();
1767
1768 $this->add_group_control(
1769 Group_Control_Typography::get_type(),
1770 [
1771 'name' => 'file_upload_button_typography',
1772 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
1773 'scheme' => Typography::TYPOGRAPHY_4,
1774 'selector' => '{{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::file-selector-button, {{WRAPPER}} .eael-gravity-form .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button, {{WRAPPER}} .eael-gravity-form .ginput_container_fileupload .button',
1775 'separator' => 'before',
1776 ]
1777 );
1778
1779 $this->add_control(
1780 'file_upload_rules_heading',
1781 [
1782 'label' => __( 'Rules', 'essential-addons-for-elementor-lite'),
1783 'type' => Controls_Manager::HEADING,
1784 'separator' => 'before',
1785 ]
1786 );
1787
1788 $this->add_group_control(
1789 Group_Control_Typography::get_type(),
1790 [
1791 'name' => 'file_upload_rulestypography',
1792 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
1793 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_fileupload_rules',
1794 ]
1795 );
1796
1797 $this->add_control(
1798 'file_upload_rules_color',
1799 [
1800 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1801 'type' => Controls_Manager::COLOR,
1802 'default' => '',
1803 'selectors' => [
1804 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gform_fileupload_rules' => 'color: {{VALUE}}',
1805 ],
1806 ]
1807 );
1808
1809 $this->end_controls_section();
1810
1811 /**
1812 * Style Tab: Scrolling Text
1813 * -------------------------------------------------
1814 */
1815 $this->start_controls_section(
1816 'scrolling_text_style',
1817 [
1818 'label' => __( 'Scrolling Text', 'essential-addons-for-elementor-lite'),
1819 'tab' => Controls_Manager::TAB_STYLE,
1820 ]
1821 );
1822
1823 $this->add_group_control(
1824 Group_Control_Typography::get_type(),
1825 [
1826 'name' => 'scrolling_text_typography',
1827 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
1828 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text .gsection_description',
1829 'separator' => 'before',
1830 ]
1831 );
1832
1833 $this->add_control(
1834 'scrolling_text_color',
1835 [
1836 'label' => __( 'Color', 'essential-addons-for-elementor-lite'),
1837 'type' => Controls_Manager::COLOR,
1838 'default' => '',
1839 'selectors' => [
1840 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text .gsection_description' => 'color: {{VALUE}}',
1841 ],
1842 ]
1843 );
1844
1845 $this->add_control(
1846 'scrolling_text_bg_color',
1847 [
1848 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
1849 'type' => Controls_Manager::COLOR,
1850 'default' => '',
1851 'selectors' => [
1852 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text .gsection_description' => 'background-color: {{VALUE}}',
1853 ],
1854 ]
1855 );
1856
1857 $this->add_responsive_control(
1858 'scrolling_text_width',
1859 [
1860 'label' => __( 'Width', 'essential-addons-for-elementor-lite'),
1861 'type' => Controls_Manager::SLIDER,
1862 'default' => [
1863 'size' => '100',
1864 'unit' => '%'
1865 ],
1866 'range' => [
1867 'px' => [
1868 'min' => 0,
1869 'max' => 1200,
1870 'step' => 1,
1871 ],
1872 ],
1873 'size_units' => [ 'px', '%' ],
1874 'selectors' => [
1875 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text' => 'width: {{SIZE}}{{UNIT}}',
1876 ],
1877 ]
1878 );
1879
1880 $this->add_group_control(
1881 Group_Control_Border::get_type(),
1882 [
1883 'name' => 'scrolling_text_border',
1884 'label' => __( 'Border', 'essential-addons-for-elementor-lite'),
1885 'placeholder' => '1px',
1886 'default' => '1px',
1887 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text',
1888 ]
1889 );
1890
1891 $this->add_control(
1892 'scrolling_text_border_radius',
1893 [
1894 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
1895 'type' => Controls_Manager::DIMENSIONS,
1896 'size_units' => [ 'px', 'em', '%' ],
1897 'selectors' => [
1898 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1899 ],
1900 ]
1901 );
1902
1903 $this->add_responsive_control(
1904 'scrolling_text_padding',
1905 [
1906 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
1907 'type' => Controls_Manager::DIMENSIONS,
1908 'size_units' => [ 'px', 'em', '%' ],
1909 'selectors' => [
1910 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1911 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text .gsection_description' => 'margin: 0;',
1912 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text::-webkit-scrollbar' => 'border:2px solid #009900;',
1913 ],
1914 ]
1915 );
1916
1917 $this->add_responsive_control(
1918 'scrolling_text_margin',
1919 [
1920 'label' => esc_html__( 'Margin', 'essential-addons-for-elementor-lite'),
1921 'type' => Controls_Manager::DIMENSIONS,
1922 'size_units' => [ 'px', 'em', '%' ],
1923 'selectors' => [
1924 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .gf_scroll_text' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;',
1925 ],
1926 ]
1927 );
1928
1929 $this->end_controls_section();
1930
1931 /**
1932 * Style Tab: Submit Button
1933 * -------------------------------------------------
1934 */
1935 $this->start_controls_section(
1936 'section_submit_button_style',
1937 [
1938 'label' => __( 'Submit Button', 'essential-addons-for-elementor-lite'),
1939 'tab' => Controls_Manager::TAB_STYLE,
1940 ]
1941 );
1942
1943 $this->add_responsive_control(
1944 'button_align',
1945 [
1946 'label' => __( 'Alignment', 'essential-addons-for-elementor-lite'),
1947 'type' => Controls_Manager::CHOOSE,
1948 'options' => [
1949 'left' => [
1950 'title' => __( 'Left', 'essential-addons-for-elementor-lite'),
1951 'icon' => 'eicon-h-align-left',
1952 ],
1953 'center' => [
1954 'title' => __( 'Center', 'essential-addons-for-elementor-lite'),
1955 'icon' => 'eicon-h-align-center',
1956 ],
1957 'right' => [
1958 'title' => __( 'Right', 'essential-addons-for-elementor-lite'),
1959 'icon' => 'eicon-h-align-right',
1960 ],
1961 ],
1962 'default' => '',
1963 'selectors' => [
1964 '{{WRAPPER}} .eael-gravity-form .gform_footer' => 'text-align: {{VALUE}};',
1965 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'display:inline-block;'
1966 ],
1967 'condition' => [
1968 'button_width_type' => 'custom',
1969 ],
1970 ]
1971 );
1972
1973 $this->add_control(
1974 'button_width_type',
1975 [
1976 'label' => __( 'Width', 'essential-addons-for-elementor-lite'),
1977 'type' => Controls_Manager::SELECT,
1978 'default' => 'custom',
1979 'options' => [
1980 'full-width' => __( 'Full Width', 'essential-addons-for-elementor-lite'),
1981 'custom' => __( 'Custom', 'essential-addons-for-elementor-lite'),
1982 ],
1983 'prefix_class' => 'eael-gravity-form-button-',
1984 ]
1985 );
1986
1987 $this->add_responsive_control(
1988 'button_width',
1989 [
1990 'label' => __( 'Width', 'essential-addons-for-elementor-lite'),
1991 'type' => Controls_Manager::SLIDER,
1992 'default' => [
1993 'size' => '100',
1994 'unit' => 'px'
1995 ],
1996 'range' => [
1997 'px' => [
1998 'min' => 0,
1999 'max' => 1200,
2000 'step' => 1,
2001 ],
2002 ],
2003 'size_units' => [ 'px', '%' ],
2004 'selectors' => [
2005 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'width: {{SIZE}}{{UNIT}}',
2006 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'width: {{SIZE}}{{UNIT}}',
2007 ],
2008 'condition' => [
2009 'button_width_type' => 'custom',
2010 ],
2011 ]
2012 );
2013
2014 $this->start_controls_tabs( 'tabs_button_style' );
2015
2016 $this->start_controls_tab(
2017 'tab_button_normal',
2018 [
2019 'label' => __( 'Normal', 'essential-addons-for-elementor-lite'),
2020 ]
2021 );
2022
2023 $this->add_control(
2024 'button_bg_color_normal',
2025 [
2026 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
2027 'type' => Controls_Manager::COLOR,
2028 'default' => '',
2029 'selectors' => [
2030 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'background-color: {{VALUE}}',
2031 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'background-color: {{VALUE}}',
2032 ],
2033 ]
2034 );
2035
2036 $this->add_control(
2037 'button_text_color_normal',
2038 [
2039 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
2040 'type' => Controls_Manager::COLOR,
2041 'default' => '',
2042 'selectors' => [
2043 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'color: {{VALUE}}',
2044 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'color: {{VALUE}}',
2045 ],
2046 ]
2047 );
2048
2049 $this->add_group_control(
2050 Group_Control_Border::get_type(),
2051 [
2052 'name' => 'button_border_normal',
2053 'label' => __( 'Border', 'essential-addons-for-elementor-lite'),
2054 'placeholder' => '1px',
2055 'default' => '1px',
2056 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"], {{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]',
2057 ]
2058 );
2059
2060 $this->add_control(
2061 'button_border_radius',
2062 [
2063 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
2064 'type' => Controls_Manager::DIMENSIONS,
2065 'size_units' => [ 'px', 'em', '%' ],
2066 'selectors' => [
2067 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2068 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2069 ],
2070 ]
2071 );
2072
2073 $this->add_responsive_control(
2074 'button_padding',
2075 [
2076 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
2077 'type' => Controls_Manager::DIMENSIONS,
2078 'size_units' => [ 'px', 'em', '%' ],
2079 'selectors' => [
2080 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2081 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2082 ],
2083 ]
2084 );
2085
2086 $this->add_responsive_control(
2087 'button_margin',
2088 [
2089 'label' => __( 'Margin Top', 'essential-addons-for-elementor-lite'),
2090 'type' => Controls_Manager::SLIDER,
2091 'range' => [
2092 'px' => [
2093 'min' => 0,
2094 'max' => 100,
2095 'step' => 1,
2096 ],
2097 ],
2098 'size_units' => [ 'px', 'em', '%' ],
2099 'selectors' => [
2100 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]' => 'margin-top: {{SIZE}}{{UNIT}}',
2101 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'margin-top: {{SIZE}}{{UNIT}}',
2102 ],
2103 ]
2104 );
2105
2106 $this->end_controls_tab();
2107
2108 $this->start_controls_tab(
2109 'tab_button_hover',
2110 [
2111 'label' => __( 'Hover', 'essential-addons-for-elementor-lite'),
2112 ]
2113 );
2114
2115 $this->add_control(
2116 'button_bg_color_hover',
2117 [
2118 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
2119 'type' => Controls_Manager::COLOR,
2120 'default' => '',
2121 'selectors' => [
2122 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]:hover' => 'background-color: {{VALUE}}',
2123 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]' => 'background-color: {{VALUE}}',
2124 ],
2125 ]
2126 );
2127
2128 $this->add_control(
2129 'button_text_color_hover',
2130 [
2131 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
2132 'type' => Controls_Manager::COLOR,
2133 'default' => '',
2134 'selectors' => [
2135 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]:hover' => 'color: {{VALUE}}',
2136 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]:hover' => 'color: {{VALUE}}',
2137 ],
2138 ]
2139 );
2140
2141 $this->add_control(
2142 'button_border_color_hover',
2143 [
2144 'label' => __( 'Border Color', 'essential-addons-for-elementor-lite'),
2145 'type' => Controls_Manager::COLOR,
2146 'default' => '',
2147 'selectors' => [
2148 '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"]:hover' => 'border-color: {{VALUE}}',
2149 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]:hover' => 'border-color: {{VALUE}}',
2150 ],
2151 ]
2152 );
2153
2154 $this->end_controls_tab();
2155
2156 $this->end_controls_tabs();
2157
2158 $this->add_group_control(
2159 Group_Control_Typography::get_type(),
2160 [
2161 'name' => 'button_typography',
2162 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
2163 'scheme' => Typography::TYPOGRAPHY_4,
2164 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"], {{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]',
2165 'separator' => 'before',
2166 ]
2167 );
2168
2169 $this->add_group_control(
2170 Group_Control_Box_Shadow::get_type(),
2171 [
2172 'name' => 'button_box_shadow',
2173 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_footer input[type="submit"], {{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="submit"]',
2174 'separator' => 'before',
2175 ]
2176 );
2177
2178 $this->end_controls_section();
2179
2180
2181 /**
2182 * Style Tab: Next Button
2183 * -------------------------------------------------
2184 */
2185 $this->start_controls_section(
2186 'eael_gravity_forms_section_next_button_style',
2187 [
2188 'label' => __( 'Next/Previous Button', 'essential-addons-for-elementor-lite'),
2189 'tab' => Controls_Manager::TAB_STYLE,
2190 ]
2191 );
2192
2193 $this->add_responsive_control(
2194 'eael_gravity_forms_next_button_align',
2195 [
2196 'label' => __( 'Alignment', 'essential-addons-for-elementor-lite'),
2197 'type' => Controls_Manager::CHOOSE,
2198 'options' => [
2199 'left' => [
2200 'title' => __( 'Left', 'essential-addons-for-elementor-lite'),
2201 'icon' => 'eicon-h-align-left',
2202 ],
2203 'center' => [
2204 'title' => __( 'Center', 'essential-addons-for-elementor-lite'),
2205 'icon' => 'eicon-h-align-center',
2206 ],
2207 'right' => [
2208 'title' => __( 'Right', 'essential-addons-for-elementor-lite'),
2209 'icon' => 'eicon-h-align-right',
2210 ],
2211 ],
2212 'default' => '',
2213 'selectors' => [
2214 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer' => 'text-align: {{VALUE}};',
2215 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'display:inline-block;'
2216 ],
2217 ]
2218 );
2219
2220 $this->add_responsive_control(
2221 'eael_gravity_forms_next_button_width',
2222 [
2223 'label' => __( 'Width', 'essential-addons-for-elementor-lite'),
2224 'type' => Controls_Manager::SLIDER,
2225 'default' => [
2226 'size' => '100',
2227 'unit' => 'px'
2228 ],
2229 'range' => [
2230 'px' => [
2231 'min' => 0,
2232 'max' => 1200,
2233 'step' => 1,
2234 ],
2235 ],
2236 'size_units' => [ 'px', '%' ],
2237 'selectors' => [
2238 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'width: {{SIZE}}{{UNIT}}',
2239 ],
2240 ]
2241 );
2242
2243 $this->start_controls_tabs( 'eael_gravity_forms_tabs_next_button_style' );
2244
2245 $this->start_controls_tab(
2246 'eael_gravity_forms_tab_next_button_normal',
2247 [
2248 'label' => __( 'Normal', 'essential-addons-for-elementor-lite'),
2249 ]
2250 );
2251
2252 $this->add_control(
2253 'eael_gravity_forms_next_button_bg_color_normal',
2254 [
2255 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
2256 'type' => Controls_Manager::COLOR,
2257 'default' => '',
2258 'selectors' => [
2259 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'background-color: {{VALUE}}',
2260 ],
2261 ]
2262 );
2263
2264 $this->add_control(
2265 'eael_gravity_forms_next_button_text_color_normal',
2266 [
2267 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
2268 'type' => Controls_Manager::COLOR,
2269 'default' => '',
2270 'selectors' => [
2271 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'color: {{VALUE}}',
2272 ],
2273 ]
2274 );
2275
2276 $this->add_group_control(
2277 Group_Control_Border::get_type(),
2278 [
2279 'name' => 'eael_gravity_forms_next_button_border_normal',
2280 'label' => __( 'Border', 'essential-addons-for-elementor-lite'),
2281 'placeholder' => '1px',
2282 'default' => '1px',
2283 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]',
2284 ]
2285 );
2286
2287 $this->add_control(
2288 'eael_gravity_forms_next_button_border_radius',
2289 [
2290 'label' => __( 'Border Radius', 'essential-addons-for-elementor-lite'),
2291 'type' => Controls_Manager::DIMENSIONS,
2292 'size_units' => [ 'px', 'em', '%' ],
2293 'selectors' => [
2294 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2295 ],
2296 ]
2297 );
2298
2299 $this->add_responsive_control(
2300 'eael_gravity_forms_next_button_padding',
2301 [
2302 'label' => __( 'Padding', 'essential-addons-for-elementor-lite'),
2303 'type' => Controls_Manager::DIMENSIONS,
2304 'size_units' => [ 'px', 'em', '%' ],
2305 'selectors' => [
2306 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2307 ],
2308 ]
2309 );
2310
2311 $this->add_responsive_control(
2312 'eael_gravity_forms_next_button_margin',
2313 [
2314 'label' => __( 'Margin Top', 'essential-addons-for-elementor-lite'),
2315 'type' => Controls_Manager::SLIDER,
2316 'range' => [
2317 'px' => [
2318 'min' => 0,
2319 'max' => 100,
2320 'step' => 1,
2321 ],
2322 ],
2323 'size_units' => [ 'px', 'em', '%' ],
2324 'selectors' => [
2325 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]' => 'margin-top: {{SIZE}}{{UNIT}}',
2326 ],
2327 ]
2328 );
2329
2330 $this->end_controls_tab();
2331
2332 $this->start_controls_tab(
2333 'eael_gravity_forms_tab_next_button_hover',
2334 [
2335 'label' => __( 'Hover', 'essential-addons-for-elementor-lite'),
2336 ]
2337 );
2338
2339 $this->add_control(
2340 'eael_gravity_forms_next_button_bg_color_hover',
2341 [
2342 'label' => __( 'Background Color', 'essential-addons-for-elementor-lite'),
2343 'type' => Controls_Manager::COLOR,
2344 'default' => '',
2345 'selectors' => [
2346 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]:hover' => 'background-color: {{VALUE}}',
2347 ],
2348 ]
2349 );
2350
2351 $this->add_control(
2352 'eael_gravity_forms_next_button_text_color_hover',
2353 [
2354 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
2355 'type' => Controls_Manager::COLOR,
2356 'default' => '',
2357 'selectors' => [
2358 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]:hover' => 'color: {{VALUE}}',
2359 ],
2360 ]
2361 );
2362
2363 $this->add_control(
2364 'eael_gravity_forms_next_button_border_color_hover',
2365 [
2366 'label' => __( 'Border Color', 'essential-addons-for-elementor-lite'),
2367 'type' => Controls_Manager::COLOR,
2368 'default' => '',
2369 'selectors' => [
2370 '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]:hover' => 'border-color: {{VALUE}}',
2371 ],
2372 ]
2373 );
2374
2375 $this->end_controls_tab();
2376
2377 $this->end_controls_tabs();
2378
2379 $this->add_group_control(
2380 Group_Control_Typography::get_type(),
2381 [
2382 'name' => 'eael_gravity_forms_next_button_typography',
2383 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
2384 'scheme' => Typography::TYPOGRAPHY_4,
2385 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]',
2386 'separator' => 'before',
2387 ]
2388 );
2389
2390 $this->add_group_control(
2391 Group_Control_Box_Shadow::get_type(),
2392 [
2393 'name' => 'eael_gravity_forms_next_button_box_shadow',
2394 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_body .gform_page_footer input[type="button"]',
2395 'separator' => 'before',
2396 ]
2397 );
2398
2399 $this->end_controls_section();
2400
2401
2402 /**
2403 * Style Tab: Errors
2404 * -------------------------------------------------
2405 */
2406 $this->start_controls_section(
2407 'section_error_style',
2408 [
2409 'label' => __( 'Errors', 'essential-addons-for-elementor-lite'),
2410 'tab' => Controls_Manager::TAB_STYLE,
2411 ]
2412 );
2413
2414 $this->add_control(
2415 'error_messages_heading',
2416 [
2417 'label' => __( 'Error Messages', 'essential-addons-for-elementor-lite'),
2418 'type' => Controls_Manager::HEADING,
2419 'condition' => [
2420 'error_messages' => 'show',
2421 ],
2422 ]
2423 );
2424
2425 $this->add_control(
2426 'error_message_text_color',
2427 [
2428 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
2429 'type' => Controls_Manager::COLOR,
2430 'default' => '',
2431 'selectors' => [
2432 '{{WRAPPER}} .eael-gravity-form .gfield .validation_message' => 'color: {{VALUE}}',
2433 ],
2434 'condition' => [
2435 'error_messages' => 'show',
2436 ],
2437 ]
2438 );
2439
2440 $this->add_control(
2441 'validation_errors_heading',
2442 [
2443 'label' => __( 'Validation Errors', 'essential-addons-for-elementor-lite'),
2444 'type' => Controls_Manager::HEADING,
2445 'separator' => 'before',
2446 'condition' => [
2447 'validation_errors' => 'show',
2448 ],
2449 ]
2450 );
2451
2452 $this->add_control(
2453 'validation_error_description_color',
2454 [
2455 'label' => __( 'Error Description Color', 'essential-addons-for-elementor-lite'),
2456 'type' => Controls_Manager::COLOR,
2457 'default' => '',
2458 'selectors' => [
2459 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .validation_error' => 'color: {{VALUE}}',
2460 ],
2461 'condition' => [
2462 'validation_errors' => 'show',
2463 ],
2464 ]
2465 );
2466
2467 $this->add_control(
2468 'validation_error_border_color',
2469 [
2470 'label' => __( 'Error Border Color', 'essential-addons-for-elementor-lite'),
2471 'type' => Controls_Manager::COLOR,
2472 'default' => '',
2473 'selectors' => [
2474 '{{WRAPPER}} .eael-gravity-form .gform_wrapper .validation_error' => 'border-top-color: {{VALUE}}; border-bottom-color: {{VALUE}}',
2475 '{{WRAPPER}} .eael-gravity-form .gfield_error' => 'border-top-color: {{VALUE}}; border-bottom-color: {{VALUE}}',
2476 ],
2477 'condition' => [
2478 'validation_errors' => 'show',
2479 ],
2480 ]
2481 );
2482
2483 $this->add_control(
2484 'validation_errors_bg_color',
2485 [
2486 'label' => __( 'Error Field Background Color', 'essential-addons-for-elementor-lite'),
2487 'type' => Controls_Manager::COLOR,
2488 'default' => '',
2489 'selectors' => [
2490 '{{WRAPPER}} .eael-gravity-form .gfield_error' => 'background: {{VALUE}}',
2491 ],
2492 'condition' => [
2493 'validation_errors' => 'show',
2494 ],
2495 ]
2496 );
2497
2498 $this->add_control(
2499 'validation_error_field_label_color',
2500 [
2501 'label' => __( 'Error Field Label Color', 'essential-addons-for-elementor-lite'),
2502 'type' => Controls_Manager::COLOR,
2503 'default' => '',
2504 'selectors' => [
2505 '{{WRAPPER}} .eael-gravity-form .gfield_error .gfield_label' => 'color: {{VALUE}}',
2506 ],
2507 'condition' => [
2508 'validation_errors' => 'show',
2509 ],
2510 ]
2511 );
2512
2513 $this->add_control(
2514 'validation_error_field_input_border_color',
2515 [
2516 'label' => __( 'Error Field Input Border Color', 'essential-addons-for-elementor-lite'),
2517 'type' => Controls_Manager::COLOR,
2518 'default' => '',
2519 'selectors' => [
2520 '{{WRAPPER}} .eael-gravity-form .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), {{WRAPPER}} .gform_wrapper li.gfield_error textarea' => 'border-color: {{VALUE}}',
2521 ],
2522 'condition' => [
2523 'validation_errors' => 'show',
2524 ],
2525 ]
2526 );
2527
2528 $this->add_control(
2529 'validation_error_field_input_border_width',
2530 [
2531 'label' => __( 'Error Field Input Border Width', 'essential-addons-for-elementor-lite'),
2532 'type' => Controls_Manager::NUMBER,
2533 'default' => 1,
2534 'min' => 1,
2535 'max' => 10,
2536 'step' => 1,
2537 'selectors' => [
2538 '{{WRAPPER}} .eael-gravity-form .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), {{WRAPPER}} .gform_wrapper li.gfield_error textarea' => 'border-width: {{VALUE}}px',
2539 ],
2540 'condition' => [
2541 'validation_errors' => 'show',
2542 ],
2543 ]
2544 );
2545
2546 $this->end_controls_section();
2547
2548 /**
2549 * Style Tab: Thank You Message
2550 * -------------------------------------------------
2551 */
2552 $this->start_controls_section(
2553 'section_ty_style',
2554 [
2555 'label' => __( 'Thank You Message', 'essential-addons-for-elementor-lite'),
2556 'tab' => Controls_Manager::TAB_STYLE,
2557 ]
2558 );
2559
2560 $this->add_control(
2561 'ty_message_text_color',
2562 [
2563 'label' => __( 'Text Color', 'essential-addons-for-elementor-lite'),
2564 'type' => Controls_Manager::COLOR,
2565 'default' => '',
2566 'selectors' => [
2567 '{{WRAPPER}} .eael-gravity-form .gform_confirmation_wrapper .gform_confirmation_message' => 'color: {{VALUE}}!important',
2568 ],
2569 ]
2570 );
2571
2572 $this->add_group_control(
2573 Group_Control_Typography::get_type(),
2574 [
2575 'name' => 'eaelgf_thankyou_message_typography',
2576 'label' => __( 'Typography', 'essential-addons-for-elementor-lite'),
2577 'scheme' => Typography::TYPOGRAPHY_4,
2578 'selector' => '{{WRAPPER}} .eael-gravity-form .gform_confirmation_wrapper .gform_confirmation_message',
2579 'separator' => 'before',
2580 ]
2581 );
2582
2583 $this->end_controls_section();
2584 }
2585
2586 /**
2587 * Render gravity forms widget output on the frontend.
2588 *
2589 * Written in PHP and used to generate the final HTML.
2590 *
2591 * @access protected
2592 */
2593 protected function render() {
2594 if(!class_exists('\GFForms')) {
2595 return;
2596 }
2597
2598 $settings = $this->get_settings_for_display();
2599
2600 $this->add_render_attribute( 'contact-form', 'class', [
2601 'eael-contact-form',
2602 'eael-gravity-form',
2603 ]
2604 );
2605
2606 if ( $settings['labels_switch'] != 'yes' ) {
2607 $this->add_render_attribute( 'contact-form', 'class', 'labels-hide' );
2608 }
2609
2610 if ( $settings['placeholder_switch'] != 'yes' ) {
2611 $this->add_render_attribute( 'contact-form', 'class', 'placeholder-hide' );
2612 }
2613
2614 if ( $settings['custom_title_description'] == 'yes' ) {
2615 $this->add_render_attribute( 'contact-form', 'class', 'title-description-hide' );
2616 }
2617
2618 if ( $settings['custom_radio_checkbox'] == 'yes' || $settings['custom_radio_style'] == 'yes' ) {
2619 $this->add_render_attribute( 'contact-form', 'class', 'eael-custom-radio-checkbox' );
2620 }
2621
2622 if ( $settings['eael_gravity_form_alignment'] == 'left' ) {
2623 $this->add_render_attribute( 'contact-form', 'class', 'eael-contact-form-align-left' );
2624 }
2625 elseif ( $settings['eael_gravity_form_alignment'] == 'center' ) {
2626 $this->add_render_attribute( 'contact-form', 'class', 'eael-contact-form-align-center' );
2627 }
2628 elseif ( $settings['eael_gravity_form_alignment'] == 'right' ) {
2629 $this->add_render_attribute( 'contact-form', 'class', 'eael-contact-form-align-right' );
2630 }
2631 else {
2632 $this->add_render_attribute( 'contact-form', 'class', 'eael-contact-form-align-default' );
2633 }
2634
2635 if ( ! empty( $settings['contact_form_list'] ) ) { ?>
2636 <div <?php echo $this->get_render_attribute_string( 'contact-form' ); ?>>
2637 <?php if ( $settings['custom_title_description'] == 'yes' ) { ?>
2638 <div class="eael-gravity-form-heading">
2639 <?php if ( $settings['form_title_custom'] != '' ) { ?>
2640 <h3 class="eael-contact-form-title eael-gravity-form-title">
2641 <?php echo esc_attr( $settings['form_title_custom'] ); ?>
2642 </h3>
2643 <?php } ?>
2644 <?php if ( $settings['form_description_custom'] != '' ) { ?>
2645 <div class="eael-contact-form-description eael-gravity-form-description">
2646 <?php echo $this->parse_text_editor( $settings['form_description_custom'] ); ?>
2647 </div>
2648 <?php } ?>
2649 </div>
2650 <?php } ?>
2651 <?php
2652 $eael_form_id = $settings['contact_form_list'];
2653 $eael_form_title = $settings['form_title'];
2654 $eael_form_description = $settings['form_description'];
2655 $eael_form_ajax = $settings['form_ajax'];
2656
2657 gravity_form( $eael_form_id, $eael_form_title, $eael_form_description, $display_inactive = false, $field_values = null, $eael_form_ajax, '', $echo = true );
2658 ?>
2659 </div>
2660 <?php
2661 }
2662 }
2663
2664 protected function content_template() {}
2665
2666 }
2667